《Linux 网络编程》
1. OSI
2. 物理层:规定通信设备的机械的、电气的、功能的和过程的特性,用以建立、维护和拆除物理链路连接。属于物理层定义的典型规范代表包括:EIA/TIARS-232、EIA/TIARS-449、V.35、RJ-45等。为数据端设备提供传送数据的通路
3. 数据链路层:在物理层提供比特流服务的基础上,建立相邻结点之间的数据链路,通过差错控制提供数据帧(Frame)在信道上无差错的传输,并进行各电路上的动作系列。数据链路层协议的代表包括:SDLC、HDLC、PPP、STP、帧中继等。链路层是为网络层提供数据传送服务的,这种服务要依靠本层具备的功能来实现。
4. 网络层:网络层的任务就是选择合适的网间路由和交换结点, 确保数据及时传送。网络层将解封装数据链路层收到的帧,提取数据包,包中封装有网络层包头,其中含有逻辑地址信息- -源站点和目的站点地址的网络地址。IP是第3层问题的一部分,此外还有一些路由协议和地址解析协议(ARP)。有关路由的一切事情都在第3层处理。地址解析和路由是3层的重要目的。在这一层,数据的单位称为数据包(packet)。网络层协议的代表包括:IP、IPX、OSPF等。网络层应具备以下主要功能:路由选择和中继;激活,终止网络连接;在一条数据链路上复用多条网络连接,多采取分时复用技术;差错检测与恢复;排序,流量控制;服务选择;网络管理;网络层标准简介。网络层主要设备:路由器