计算机网络重难点总结

TCP/IP体系依赖关系

  • IP层依赖datalink层。
  • ARP协议依赖datalink层。
  • TCP/UDP协议依赖IP层。
  • ICMP协议依赖IP层。
  • 应用层的http/https协议依赖TCP。
  • 应用层的ping程序依赖ICMP层。
  • 应用层的telnet协议依赖TCP。
  • 应用层的OSPF协议依赖IP层。
  • 应用层的DNS协议依赖UDP层。

封装和分用

封装

下层协议模块通过将上层数据加上头部信息来为上层协议提供服务,对于上层协议来说是透明的,相当于上层协议模块使用了下层协议模块的接口。
例如:TCP数据报 + IP头部表示IP层完成了对TCP层的封装。

分用

依赖头部的类型字段来实现。
例如IP数据包头部的类型字段值为6/17,则说明需要将IP数据包的数据部分提交给上层的TCP模块/UDP模块.
例如TCP/UDP数据包头部的类型字段值为53/80,则说明需要将TCP数据包的数据部分提交给上层的DNS服务/http服务.

报文校验字段

  • ICMP的CRC字段用于检验头部信息和数据。
  • TCP的CRC字段用于检验头部信息和数据。
  • 其他的协议均只检验头部信息。

ICMP协议

头部

8位类型 + 8位代码 + 16为校验和 = 共32位。

报文类型

共分为两大类报文

ICMP差错报文

在IP通信出错时,通过由远端路由器或目标主机发给源主机的错误信息,分为下面两种:

  • 类型为3的目标不可达报文。
  • 类型为5的重定向报文,更进一步,代码为0表示网络重定向,代码为1表示对主机重定向。

ICMP查询报文

类型为8,目的是查询目标主机/路由的可达性,ping程序就是使用了ICMP查询报文。

ARP协议

作用

当一台主机连上LAN时,会通过DHCP分配一个ip地址,同时,此主机上的网卡自带MAC地址,若此主机想和LAN上的其他结点通信,则必须获取目标结点的MAC才行。ARP协议的作用就是根据目标主机IP地址来获取对应此IP的主机的MAC地址。使用前提:需要知道目标主机的IP地址。

头部与四种报文类型

主要为ARP请求报文和ARP应答报文
其中ARP请求报文需要在LAN里广播
而ARP应答报文是一对一的

ARP缓存表

用来保存经常访问或最近访问的主机的IP地址到物理地址的映射,可直接查表,提高效率。

TCP协议

头部信息

图片来自网络

TCP特性

  • 面向字节流:给缓冲区内的每个字节进行编号,用以保持数据的顺序。
  • 可靠性:通过ACK + 定时器来实现延时ACK,保证数据包不会丢失,用于取代一对一的ACK机制,提高效率。
  • 面向连接:数据的传输必须建立在连接之上。

网络编程API相关原理

  • 五元组(srcIp,srcPort,desIp,desPort,proto)。
  • sockfd和五元组一对一。
  • SYN队列(半连接队列):服务端第一次接受到SYN报文后会创建一个TCB,并加入到SYN队列中。
  • accept队列࿰
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值