网络编程-基础篇01(网络模型)

1.网络传输的OSI七层模型

osi

1.1物理层
物理层以二进制电信号传播数据,为启动、维护以及关闭物理链路定义了电气规范、机械规范、过程规范和功能规范。
例如网线的接口标准,usb接口标准等等。

1.2数据链路层

这一层提供介质访问和链路的管理,定义如何格式化数据以便进行传输以及如何控制对网络的访问;还支持错误检测的方法如奇偶校验(检测二进制数据中"1"的个数是奇数还是偶数)。
该层的数据整体格式被叫做

8B 6B 6B 2B 可变长 4B
前导符 目标物理地址(DMAC) 源地址(SMAC) 数据长度 DATA FCS校验位

这一层的典型运行设备为交换机,采取的协议为以太网协议(有线网)802.2(无线网)802.3(无线网)
1.3 网络层
网络层主要解决的是数据的传输问题。该层呈现出3个特点:
①该层数据被叫做数据包
②选择传输数据的最佳路径
③支持逻辑寻址和路径选择
数据包格式如下:

| IP头 | 源地址(SIP) | 目标地址(DIP) | DATA |

选择最佳路径和逻辑寻址,路由选择依赖于路由表————存有到达特定网络终端的路径,在某些情况下,还有一些与这些路径相关的度量。

这一层的主要设备为路由器,通用协议为IP协议,因此这一层也被叫做IP层。

1.4 传输层
传输层主要解决传输问题。具体在4个方面:
①确保数据传输可靠性
②建立、维护、终止虚拟电路(例如TCP的三次握手、四次挥手)
③通过错误检测和恢复(海明码)
④信息流控制来保障可靠性
通用协议为TCP/UDP协议
1.5 会话层
解决主机间通信—————建立、管理和终止在应用程序间的对话。该层的通信由不同设备中的应用程序之间的服务请求和响应组成。
1.6 表示层
解决数据表示问题,具体如下:
①确保接收系统可以读出数据
②格式化数据
③构建数据
④协商于应用层的数据传输语法
⑤提供加密
常见的协议如VPN,SSTP等。
1.7 应用层
OSI参考模型中最靠近用户的一层,是为计算机用户提供应用接口,也为用户直接提供各种网络服务。我们常见应用层的网络服务协议有:HTTP,HTTPS,FTP,POP3、SMTP等。

2.TCP/IP模型

TCP/IP模型将osi七层模型中的应用层、表示层、会话层合并为应用层,将数据链路层和物理层合并为网络接口层。

它和osi模型的关系:

  1. OSI引入了服务、接口、协议、分层的概念,TCP/IP借鉴了OSI的这些概念建立TCP/IP模型。

  2. OSI先有模型,后有协议,先有标准,后进行实践;而TCP/IP则相反,先有协议和应用再提出了模型,且是参照的OSI模型。

  3. OSI是一种理论下的模型,而TCP/IP已被广泛使用,成为网络互联事实上的标准。

它们的数据传输过程都需要经过层层的封装和解析,每一层封装一次,解析只能通过对等的层来完成。TCP/IP模型的封装过程如下:

它的解析过程是从下到上依次解析,直到应用层还原数据,osi模型的数据传输也是这样。

posted @ 2019-10-11 11:13  __冫冫  阅读(233)  评论(0编辑  收藏  举报