*** 七层模型主要是提供的一种规范,而在这每一层上为了实现不同的功能,各个计算机厂商都会实现自己的协议,这些协议的标识就是通过一些协议头和进行的,比如上面图中,数据在经过每一层的封装之后都会为其加上自己的协议头部,当数据经过物理介质传输到目标机器上后,其就会反过来,将数据进行一层一层的解析,解析的过程其实就是根据其每一层头部信息来实现该层的相关功能。
另外, *** 七层模型是一种比较理想化的模型,现在应用比较广泛的是 *** 五层模型,五层模型与七层模型的主要区别在于将应用层、表示层和会话层统一划分到应用层中了,由应用程序实现其相关的功能。
2. TCP与UDP
在我们的应用开发过程中,我们其实不需要太过于关注底层相关的功能,这些只需要相关的服务提供商提供相应的功能即可。不过在传输层之中,我们需要特别关注一下现在广泛使用的两个协议:TCP和UDP协议。这两个协议之间的主要区别如下:
TCPUDP面向连接无连接提供数据可靠保证不提供数据可靠性保证速度相对较慢速度较快占用资源较多占用资源较少
关于TCP和UDP,可以看到,这两个协议各自分别有非常鲜明的特点:TCP虽然占用资源较多,速度相对较慢,但是提供了可靠的数据传输服务,这在大多数的互联网业务中是非常必要的;而UDP虽然不提供可靠性的数据保证,但是其速度非常快,而且占用资源较小,这在一些对数据可靠性较低的场景中是非常有用的,比如音视频服务,物联网数据上报服务等等,这些情况下,数据丢失一两帧都是可以接受的。
TCP和UDP在资源占用上的区别,不仅体现在数据传输方式上,还体现在了数据的传输格式上。对于数据传输方式,TCP每次发送数据的方式都是按照时间窗口的方式一个数据报一个数据报的发送,并且需要等待每个数据报都给数据发送方响应ACK,这个时候才会发送下一个数据窗口的数据,如果当前窗口内有任意一个数据报没有发送成功,那么整个窗口内的数据都会重新发送;而UDP则没有窗口的概念和对应的ACK机制,其获取到每一个数据报之后,都只是简单的为其封装UDP协议头,然后将其发送出去,其不会管这个数据是否发送成功,因而UDP传输比TCP是要快很多的。对于数据传输格式,这里我们以TCP和UDP的数据报的格式进行讲解,如下是TCP的数据报格式:
可以看到,TCP数据报的头部中不仅包含了源端口号和目的端口号,还包含了序号、确认序号、首部长度、标志位等等信息,总的来看,除去真正的数据部分,头部信息占用的字节数就达到了192字节,当然,这么多字段主要的作用是为了实现TCP面向连接的可靠性传输的功能。如下则是UDP数据报的格式:
此前有媒体爆出陌陌上3000万的数据正在暗网以50美元价格出售。也就是说,300余元就可以购买千万级的个人信息。随后,陌陌公司方面正式回应,表示这些数据是三年前黑客通过撞库获得的。陌陌方面称,陌陌采用...
文/FIGO 前天,朋友圈被“抖音日活用户超过1.5亿,月活用户超3亿”消息刷屏的人应该不在少数,作为2016年推出的短视频应用,能在两年时间内取得这样的成绩,应该属于“现象级”的存在。 1....
微信怎么备份数据?当我们在更换手机、重置系统、版本降级的时候,会导致原来的微信聊天记录等数据丢失。如果想要在这些情况下保留微信聊天数据,则需要提前对微信聊天记录进行备份,方便之后恢复。今天小编给大家带...
互联网时代,人们在享受流量红利的同时,也需要面对一些列的网络安全威胁。随着Facebook、雅虎等信息数据泄露事件的频发,也让人们意识到网络安全的重要性。对于雅虎数据泄露事件,相信大家都不会陌生,甚至...
成长速度减慢,可能遇到天花板,甚至发生倒退,这逼着我们运营必然要进级,而风雅化的运营首先要更相识我们的用户特征,才气更好的实施本性化的产物和处事。 前段时间写了一篇文章《方针用户群的定位和维系是产物运...
内容转载自丨阿何有话说 撰文 | 阿何 1 大家应该有过类似的经历吧: 你租房的时候在中介那里留了电话,结果没过几天就开始遭受不同人的电话骚扰。卖房的,租房的,贷款的...