网络访问层是最神秘、最不统一的TCP/IP层,它管理为物理网络准备数据所必须的服务和功能,包括:
- 与计算机网络适配器的连接
- 根据合适的访问方式调整数据传输
- 把数据转化为电子流或模拟脉冲的形式,以在传输介质上进行传输
- 对接收到的数据进行错误检查
- 给发送的数据添加错误检查信息,从而让接收端计算机能够对数据进行错误检查
。
TCP/IP网络访问层大致对应于OSI的物理层和数据链路层。OSI的物理层负责吧数据帧转化为适合于传输介质的比特流。OSI的数据链路层执行两个独立的任务,相应划分为两个子层
- 介质访问控制(MAC):这个子层提供与网络适配器连接的接口。实际上,网络适配器驱动程序通常被称为MAC驱动,而网卡在工厂固化的硬件地址通常被称为MAC地址。
逻辑链路控制(LLC):这个子层对经过子网传递的帧进行错误检查,并且管理子网上通信设备之间的链路。
IEEE 802.3(以太网)
IEEE 802.11(无线网络)
IEEE 802.16(WIMAX):用于移动通信长距离无线连接的技术。
点到点协议(PPP):Modem通过电话线进行连接的技术。
当以太网软件从网际层接收到数据报之后,执行以下操作:
- 根据需要把网际层的数据分解为较小的块,以符合以太网帧数据段的要求,以太网帧的整体大小必须在64字节与1518字节之间(不包含前导码)。有些系统支持更大的帧,最大可以到9000字节。这种大型帧能够改善效率,但存在兼容性问题,而且并没有得到广泛的支持。
- 把数据块打包成帧,每一帧都包含数据及其他的信息,这些信息是以太网网络适配器处理帧所需要的。 IEEE 802.3以太网帧包含以下内容
- 前导码:表示帧其实的一系列比特(一共8字节,最后一个字节是帧起始符)。
- 目标地址:接收帧的网络适配器的6字节(48比特)物理地址。
- 源地址:发送帧的网络适配器的6字节物理地址。
- 可选的VLAN标记:这个可选的16比特字段在802.1q标准中有讲解,其目的是允许多个虚拟LAN通过同一个网络交换机运行。
- 长度:两个字节,表示数据段的长度。
- 数据:帧中传输的数据
- 帧校验序列(FCS):帧的4字节校验和。(发送方计算帧的循环冗余码CRC值,把这个值写到帧里,接收方计算机重新计算CRC,与FCS字段的值进行比较,如果两个值不相同,就表示传输过程中发生了数据丢失或改变,这时就需要重新传输这一帧)。
把数据帧传递给对应于OSI模型物理层的底层组件,后者吧帧转换为比特流,并且通过传输介质发送出去。
以太网上其他网络适配器接收到这个帧,检查其中的目的地址。如果目的地址与网络适配器的地址相匹配,适配器软件就会处理接收到的帧,把数据传递给协议栈中较高的层。
TCP/IP学习中,以上内容摘自《TCP/IP入门经典》第三章。