产品经理懂点技术之:常见的网络传输方式

终于等到了复工的时间,产品汪也迫(害)不(怕)及(至)待(极)的踏上了搭上了返工的地铁。回到公司,看到程序猿跟供应商正在群里聊着一个问题并@了自己,大致意思是,我方的系统需要定时从对方系统上获取账单进行对账。

于是程序猿问对方,获取账单的接口是什么,结果对方说没接口,只是会定时生成一个文件,然后要我方通过FTP去获取文件,于是程序猿们一边吐槽着对方的模式落后,一边吵着要加半天工期。

好不容易平息了程序猿哥哥们,产品汪开始思考,为什么传文件要用FTP呢,以前讲的HTTP不行么?又或者让供应商每天发个邮件给我们可以么?他们又有什么区别呢?

等到下班后,产品汪就去问程序猿哥哥,网络一般都有什么传输方式呢?程序猿哥哥说,常见的网络传输技术有HTTP、FTP、SMTP三种,接下来讲给你娓娓道来。

HTTP(HyperText Transfer Protocol,超文本传输协议)

HTTP是因特网上应用最为广泛的一种网络传输协议。最初,HTTP是为了WWW(World Wide Web,万维网,现在多简称为WEB)设计的。

产品经理懂点技术之:常见的网络传输方式

HTTP基于C/S模式(客户/服务器模式),最初的设计就是实现“超文本”内容的传输。

1963年,德特·纳尔逊(Ted Nelson)创造了术语“超文本”。1981年,德特在他的著作中使用术语“超文本”描述了这一想法:创建一个全球化的大文档,文档的各个部分分布在不同的服务器中。通过激活称为链接的超文本项目,例如研究论文里的参考书目,就可以跳转到引用的论文。

用现在的眼光看待当时的超文本,就是一个只有文字和超链接的最简单的WEB网页。但是随着时代的发展,WEB网页内容逐渐爆增,越来越多的媒体内容以网页作为载体承载的呈现,如图片、网页内听音乐、文件下载、网页内看视频、甚至还有网页游戏、网页看直播、网页VR等等。

最初的HTTP协议只考虑了传输纯文本的内容,后来随着WEB技术的发展也不断迭代,最后伴随WEB技术的发展成为应用最为广泛的网络传输协议。

产品经理懂点技术之:常见的网络传输方式

时至今日,我们在APP上看到的banner图片、商品详情、新闻内容、视频直播等,后台网页上看到的所呈现的内容,大部分都是通过HTTP协议传输的。

FTP(File Transfer Protocol,文件传输协议)

从名字不难看出,FTP的定位就是来传文件的。FTP 是因特网网络上历史最悠久的网络工具,从 1971 年由 A KBHUSHAN 提出,至今有快半个世纪了。

FTP也是一个客户/服务器模式,大约20年前的互联网络,下载文件用FTP传输还比较普遍,那时候各大高校、地区论坛一般都有自己的FTP站点,供大家共享、下载文件使用。在那个互联网宽带既不宽裕也不稳定的年代,FTP相对比HTTP能带来更好的文件传输稳定性、更快的文件传输速度,而且FTP协议支持完善的账号权限管理,一度受到了大家的欢迎。

产品经理懂点技术之:常见的网络传输方式

小汪就问:既然FTP下载文件有优势,为什么大家却不用呢?

程序猿哥哥答到:这个原因可能比较复杂,FTP定位有局限性,只能传文件,不像HTTP一样,什么东西都可以传;另外估计与P2P多点下载的出现有关系吧,也就是现在大家常见的迅雷下载。FTP毕竟论开发方便而言,不如HTTP多能,对普通用户而言,下载速度又不如P2P,那估计就没市场了。现在FTP最常使用的场景应该就剩下把非常多的文件传到服务器上了,而且这还有很多可替代的方案可选呢。

SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)

小汪说,这个我见过,配置outlook的时候要填的!肯定是跟邮件有关的。是的,SMTP于1981年首次发布,在当时而言是一种相对简单的基于文本传输的协议。

根据维基百科,这个“simple”简单,是由于当时SMTP是作为UUCP即UNIX间复制协议(Unix to Unix Copy Protocol),一个名字一听就很复杂的协议的补充。但由于SMTP有着更优异的表现,最终成为了最主流的电子邮件传输方式。

产品经理懂点技术之:常见的网络传输方式

SMTP的定位就是传输邮件,用途是帮助每台计算机在发送或中转信件时找到下一个目的地。最初SMTP协议并没有对发送方身份进行验证,导致垃圾邮件横行,后来SMTP也尝试推出了一些拓展协议,以试图减少垃圾邮件。

如果大家配置过outlook、foxmail,或者用自己的邮件代收公司的电子邮件,一定见过SMTP的两个同胞兄弟,POP3或IMAP,这是由于SMTP协议是把一封邮件从一台服务器推给另外一台服务器的,并不允许主动从服务器上把邮件取回来。而POP3或IMAP的作用就是让你可以把服务器上的邮件取回自己电脑上。

电子邮件在现代社会,可以用“不温不火”来形容,工作过程中有重要文件或者会议内容,就用邮件发送,日常办公可以用诸如微信、QQ沟通,甚至是企业微信、钉钉等定位为工作IM的产品代替。

OSI模型

了解完HTTP、FTP、STMP后,程序猿哥哥告诉小汪,其实有个词叫做“OSI模型”,是刚才说的一切的基础。

OSI :Open System Interconnection Reference Model,开放式系统互联通讯参考模型,是由国际标准化组织在20世纪80年代早期制定的,一套试图使各种计算机在世界范围内互连为网络的标准框架。

产品经理懂点技术之:常见的网络传输方式

OSI是一个从底层硬件到上层软件的分层式结构,自下而上分为七层。

前三层,也就是物理层到网络层,统称为”网络层“,其实都跟我们的联网设备硬件息息相关,是编程成互联网的硬件基础。

第四层到第七层,运行在互联网这张大网的每个节点上,俗称“主机层”。第七层即应用层,是“站在巨人肩膀上”的一层,这里常见的网络服务有很多:HTTP、FTP、SMTP、DNS等。这一层的存在,使程序猿们让APP能打开一个网页时,不再需要懂得电磁波如何在空气中传播、如何把光纤里面的光转换为电信号等等的复杂问题,所有的编程工作都都基于现成的网络服务展开。

这时候产品汪不经感慨:“原来要联网传点东西,其实是一件那么复杂的步骤啊!”


分享到:


相關文章: