一. OSI的参考模型和TCP/TP协议
1.什么叫OSI模型 ?
国际标准化组织(ISO),1984年颁布了开放系统互联(OSI)参考模型,一个开放式体系结构。将网络分为七层
1.1 OSI 的七层功能
1.2 OSI 七层分别的含义
应用层:网络服务与最终用户的一个接口;人机交互窗口,把人的语言输入到计算机当中。例如,在QQ的对话窗口输入字符
表示层:数据的表示,安全、压缩 ;将接收到的数据翻译成二进制数组成的计算机语言,并对数据进行压缩和解压,数据加密和解密等工作
会话层:建立、管理、中止会话;管理是否允许不同机器上的用户之间建立会话连接关系
传输层:定义传输数据的协议端口号,以及流控和差错校验;将上层应用数据分片井加上端口号时装成数据段,或通过对报文头中的端口识别,实现网络中不同主机上的用户进程之间的数据通信
网络层:进行逻辑地址寻址,实现不同网络之间的路径选择;将上层数据加上源和日的方的逻辑(IP)地址封装成数据也,实现数据从源端到日的端的化输
数据链路层:建立理辑连接,进行硬件地址寻址、原销校验等功能;将上层数据加上源和目的方的物理(MAC)地址封装成数据帧,MAC地址是用来标识网卡的物理地址,建立数据链路 当发现数据错误时,可以重传数据帧。
物理层:建立、维护、断开物理连接;报文头部和上层数据信息都是由二进制数组成的,物理层将这些二进制数字组成的比特流转换成电信号在网络中传输
2.什么叫TCP/TP协议?
TCP/IP(Transmission Control Protocol/Internet Protocol)传输控制协议/互联网协议
开放系统互联协议中最早的协议之一,它为连接不同操作系统和shu不同硬件体系结构的互联网络提供通信支持,是一种网络通用语言。TCP/IP协议定义了在互联网络中如何传递、管理信息(文件传送、收发电子邮件、远程登录等),并制定了在出错时必须遵循的规则。
2.1 TCP/TP协议分层
应用层:HTTP ,FTP ,TFTP ,SMTP ,SNMP ,DNS
传输层:TCP ,UDP
网络层:IP ,ICMP ,IGMP ,RARP ,ARP
数据链路层 物理层:有底层网络定义的协议;IEEE 802.3有线局域网标准;IEEE 802.11无线局域网标准
2.2 TCP协议
TCP(传输控制协议):协议应用的端口及其协议功能----传输更加稳定可靠
端口80 HTTP(超文本传输协议〉: 用于浏览器和Web服务器之间的请求和响应的交互
端口21FTP (文件传输协议):用于控制连接FTP服务器
端口53 DNS(域名系统): 用于连接DNS服务器
端口25 SMTP (简单邮件传输协议): 用于发送邮件
端口110 PoP3(邮局协议版本3): 用于接收邮件
端口22 SSH(安全外壳协议): 用于计算机之间的远程加密登录
2.3 UDP协议
UDP(用户数据报协议):协议应用的端口及其协议功能----传输效率更高
端口69TFTP(简单文件传愉协议〕: 用于小文件的传输
端口53 DNS(域名系统): 用于解析DNS
端口111 RPCC(远程调用协议): 用于远程过程调用
端口161 SNMP(简单网络管理协议): 用于网络设备的管理
端口123 NTPC(网络时间协议): 用于网络时间同步
2.4 IP协议
IP(网际协议)协议及其功能:
ARP(地址解析协议): 用于在局域网中根据IP地址获取物理地址
RARP(逆地址解析协议): 用于在局域网中通过ARP表根据物理地址请求IP地址
ICMP (网际控制报文协议): 用于验i证网络是否畅通
IGMP (网际组管理协议): 用子主机写组播路由器之间组播通信
3.OSI模型与TCP/IP协议的对应
二. 数据传输中的封装和解封装的过程
1.封装过程
-
应用层将数据交给传输层,传输层添加上TCP的控制信息(称为TCP头部),这个数据单元称为数据段(Segment),加入控制信息的过程称为封装。然后,将数据段交给网络层。
-
网络层接收到数据段,再添加上IP头部,这个数据单元称为数据包(Packet)。然后,将包数据交给数据链路层。
-
数据链路层接收到数据包,再添加上MAC头部和尾部,这个数据单元称为数据帧(Frame)。然后,将数据帧交给物理层。
-
物理层将接收到的数据转化为比特流,然后在网线中传送。
2. 解封装过程
-
物理层接收到比特流,经过处理后将数据交给数据链路层。
-
数据链路层将接收到的数据转化为数据帧,再除去MAC头部和尾部,这个除去控制信息的过程称为解封装,然后将包交给网络层。
-
网络层接收到包,再除去IP头部,然后将段交给传输层。
-
传输层接收到段,再除去TCP头部,然后将数据交给应用层。
3. 总结封装和解封装
从以上传输过程中,可以总结出以下几点。如下所示:
-
发送方数据处理的方式是从高层到底层,逐层进行数据封装。
-
接收方数据处理的方式是从底层到高层,逐层进行数据解封装。
-
接收方的每一层只把对该层有意义的数据拿走,或者说每一层只能处理发送方同等层的数据,然后把其余的部分传递给上一层
————————————————
版权声明:本文为CSDN博主「kele_baba」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kele_baba/article/details/114306587