计算机网络(自顶向下的方法)
计算机网络(自顶向下的方法)知识点总结
目录
3、动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)
4、网络地址转换(NAT,Network Address Translation)
4.3 ICMP(Internet Control Message Protocol,因特网控制报文协议)
1、RIP(Routing Information Protocol,路由选择信息协议)
2、OSPF(Open Shortest Path First,最短路径优先路由协议)
3、BGP(Border Gateway Protocol,边界网关协议)
一、概述
1、ISP(Internet Service Provider)网络服务提供商
2、API (Application Programming Interface)应用程序编程接口。连接到网络的端系统会提供应用程序编程接口,它定义了在不同终端上运行的软件之间通过网络的通信方式。
3、协议(protocol)。规定了交换数据的报文格式与次序,以及报文发送、接收或发生其它事件时所采取的动作
4、协议栈模型
- 应用层(application):为用户程序提供接口。应用层的信息分组称为报文(message)
- 表示层(OSI)(presentation):为不同终端的上层用户提供信息和数据的格式化方法
- 会话层(OSI)(session):负责在网络中的两节点之间建立和维持通信
- 运输层(transport):实现进程到进程的通信。分组称为报文段(segment)
- 网络层(network):实现主机间的通信。分组称为数据报(datagram)。
- 数据链路层(link):实现相邻节点间的数据传输。分组称为帧(frame)。
- 物理层(physical):完成物理介质上比特流的传输。单位为比特(bit)。
5、设备归属
- 路由器(Routers),网络层(第三层)。
- 交换机(Switches),链路层(第二层)。
- 网桥(Bridges),链路层,功能与交换机相似,区别在于交换机多端口,网桥二端口。
- 转发器(Repeater),物理层(第一层)。两个端口,一入一出,对衰减的信号进行放大整形或再生,起到扩展网段距离的作用。
- 集线器(Hubs),物理层(第一层)。起数据转发和网络拓展作用。和交换机不同的是集线器是通过广播的方式传递数据。多个端口,单进多出。
6、协议汇总
基于UDP:RIP,DNS,SNMP,DHCP。
- 应用层:HTTP,FTP,SMTP,POP3,IMAP,DNS,P2P,BitTorrent,SNMP,Telnet。
- 传输层:UDP,TCP。
- 网络层:IP,DHCP
- 链路层:TDMA,FDMA,时隙ALOHA,ALOHA,CSMA,CSMA/CD,CSMA/CA,ARP。
二、应用层
3、DNS
- DNS迭代解析:全部由DNS客户端向本地名称服务器(本地域名服务器)查询

- DNS递归解析:当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求得到结果后转交给客户机

三、传输层
四、网络层
4.2 IPv4
1、IP分片
2、子网分配
- 子网掩码:前n位全1,后(32-n)位全0
- 网络号:IP地址与子网掩码做与运算的结果
- 广播地址:网络位不变,主机位全置1
- 主机号:保留网络位,主机位为IP地址
- 主机号范围:网络地址+1~广播地址-1
- 三类网络:
- A:0.0.0.0~127.255.255.255(00~01)8网络,24主机
- B:128.0.0.0~191.255.255.255(100~101) 16网络,16主机
- C:192.0.0.0~223.255.255.255(1100~1101) 24网络,8主机
-
127.0.0.1:本地回环地址(Loopback Address),不属于任何一个有类别地址类。它代表设备的本地虚拟接口,所以默认被看作是永远不会宕掉的接口。在Windows操作系统中也有相似的定义,所以通常在安装网卡前就可以ping通这个本地回环地址。一般都会用来检查本地网络协议、基本数据接口等是否正常。
3、动态主机配置协议(DHCP,Dynamic Host Configuration Protocol)
- 即插即用协议,允许主机自动获取一个IP地址(为主机分配一个临时的IP地址)
- 当主机加入或离开时,DHCP更新IP地址表。DHCP服务器会动态的从地址池中抽取地址和放回地址。
- DHCP为新到来的主机分配IP地址:
- DHCP发现(客户在UDP分组中广播DHCP发现报文)
- DHCP提供(一个或多个DHCP服务器广播DHCP提供报文作出响应)
- DHCP请求(客户从所有服务器中选择一个,提供DHCP请求报文)
- DHCP ACK (DHCP服务器用DHCP ACK报文响应请求)
- 缺点:因为每到一个地方DHCP就会分配一个新的IP,故当结点在子网间移动时,其不能维持该结点与远程应用之间的TCP连接
4、网络地址转换(NAT,Network Address Translation)
- 解决问题:子网变大(新的设备加入)后的地址分配问题
- 私有IP、端口号与公有IP、端口号之间的转化(由路由器改写)

- 缺点:
- 不同主机上的不同进程被NAT变为了同一个IP+端口号(破坏进程编址);
- 越级处理,路由器处理了传输层的分组;
- 违反了端到端原则(结点介入了主机间的通信),妨碍了部分P2P应用(文件共享、语音应用)
- 应该使用IPv6来解决IP不够的问题,而非用NAT
- 优点:
- 解决了IP不够用的问题
- 能够用一个IP代表所有内网的资源使用
- UPnP:解决了NAT在P2P应用中NAT穿越的问题
4.3 ICMP(Internet Control Message Protocol,因特网控制报文协议)
用于差错报告,报告在某个位置IP路由器不能找到一条路径
4.4 IPv6
1、IPv4与IPv6
| IPv4 | IPv6 | |
| 地址容量 | 32bit(点分十进制) | 128bit(冒号十六进制,8组) |
| 首部大小 | 20B~60B | 40B(没有首部检验和,选项) |
| 分片 | 支持分片(根据路由MTU) | 不支持分片,长度超出则丢弃,并发送“分组太大” |
| 数据传播 | 单播,广播 | 单播,广播,任播(可以使数据报交付给一组主机中的任意一个) |
2、从IPv4到IPv6
1.双栈(dual-stack)
使用双栈的结点能够使用IPv4与IPv6,能够接收与发送IPv4、IPv6
2.建隧道(tunnrling)
将IPv6打包为IPv4进行传输
隧道:两个IPv6中间的IPv4路由器的集合
4.5 路由选择算法
1、全局式路由选择算法
-
用完整的、全局的网络计算最短路径
-
链路状态算法 (Link Stack)
Dijkstra算法- D(v):源节点到目的结点v的最低费用;
- p(v):最短路径的前一结点(v的邻居);
- N‘:已确认结点集


2、分散式路由选择算法
- 迭代的、分布式的计算方式计算最短路径
- 距离向量算法 DV(distance vector)
- 迭代的:算法持续到邻居间无更多的信息交换为止
- 分布式的:每个结点需要从一个或多个邻居处获得信息
- 异步的:不要求所有结点步伐一致的操作
- 每次更新到邻居结点的最短距离表
- 路由选择环路,坏消息(链路状态改变)传播慢
| LS | DV |
| 在网络上的所有结点广播信息 | 只和邻居结点广播信息 |
| 信息包括到邻居结点的距离D(v) | 信息包括所有结点最短的距离min{dv} |
| 收敛速度快O( |
收敛速度慢(路由选择环路,无穷计数) |
| 能够广播不正确路径 | |
| 健壮的,不正确链路仅在小范围传播 | 不正确链路会扩散到整个网络 |
4.6 因特网中的路由选择
自治系统(AS)用以解决路由器规模过大时路由算法计算量过于复杂,以及公司有管理自治需求的问题,提出在一个AS中运行在自治系统内部的路由选择算法(RIP、OSPF)与网关路由器
1、RIP(Routing Information Protocol,路由选择信息协议)
- 基于DV算法实现的一种距离向量协议,使用术语跳,指示从源路由器到目的子网的最短路径所经过的子网数量(算上自己,最大15跳)
- 邻居间每30s使用RIP响应报文更新信息,每台路由器需要维护一张路由选择表
- RIP是基于UDP运行的应用层协议,但其功能服务于网络层
2、OSPF(Open Shortest Path First,最短路径优先路由协议)
- 基于LS算法的AS路由选择协议
- 优点:1.安全,可以鉴别OSPF报文的真实性;2.允许从多条费用相同的路径中选择一条使用;3.对单播和多播路由选择的综合支持;4.支持在单个路由选择域内的层次结构
3、BGP(Border Gateway Protocol,边界网关协议)
- BGP为每个AS提供的功能:
- 从邻居AS获取子网的可达性信息
- 向本AS内部的所有路由器通告它(子网)的可达信息
- 基于可达性信息与策略,确定到达某个子网的最佳路由。
- 内部和外部BGP
- 跨越两个AS的BGP连接称为外部BGP(External Border Gateway Protocol,eBGP)
- 在相同AS中的两台路由器之间的会话称为内部BGP(Internal Border Gateway Protocol,iBGP)

- BGP基于TCP实现,功能服务于网络层
- BGP路由选择(热土豆路由选择):将分组以最低开销送出其AS
4.7 广播和多播
广播:从一个源结点到网络中所有其他结点交付分组的服务
多播:从一个源结点向其他网络中一个结点子集交付分组
1、广播方法
- N次单播
- 无控制洪泛
- 洪泛(flooding):结点向它的所有邻居结点都发送分组副本。
- 广播风暴(broadcast storm):网络中存在环时,结点无休止的广播分组。
- 受控洪泛
五、数据链路层
5.1 链路层提供的服务
- 成帧(framing):将网络层数据报用链路层帧封装起来。
- 链路接入:媒体访问控制MAC(Medium Access Control)规定了帧在链路上的传播规则
- 可靠交付(reliable data transfer):保证无差错地传递网络层数据报,特别对于误码率较高的无线链路。许多有线的链路层不提供可靠交付服务。
- 差错检测和纠正
5.2 差错检测和纠正
奇偶校验(parity checking)
- 如果要发送包含d个比特的数据,发送方加上一个额外的校验比特。如果采用偶校验,则使这(d+1)个比特中1的总数为偶数。
- 接收方接收(d+1)个比特,如果采用偶校验,但是1的总数为奇数,则检查出错误。但是没有差错纠正能力。
检验和(checksum)
- 对于数据D,发送方计算所有数据16比特字的和,如果溢出则回卷(指加到最后一位)。
- 求这个和的反码(就是将结果的0换成1,1换成0)。
- 将数据与检验和发送给接收方。
- 接收方将数据和检验和的所有16比特字加到一起,如果结果全为1,则正确,反之出错。
循环冗余检测(Cyclic Redundancy Check,CRC)
- 接收方和发送方提前规定一个生成多项式G,包含(r+1)个比特。
- 发送方要发送一个包含 d 比特的数据D。
- 接收方计算:D末尾添r个0,除以 G ,如果余数R为0,则正确,反之有错误。
- CRC=G+R,可以检测到连续的 r 比特或者更少的误差。
5.3 多路链路访问链路和协议
1、多路访问(Multiple Access)问题
- 多路访问协议:协调多个发送和接收结点对在一条共享广播信道上的传输行为
- 碰撞(collide):多个结点同时传输帧,所有结点同时接收到多个帧。传输的帧在所有接收方发生碰撞
2、多路访问解决办法
- 信道划分协议(Channel Partitioning Protocols)
- 时分多路复用(time division multiple access,TDMA)
- 频分多路复用(frequency division multiple access,FDMA)
- 码分多址(Code Division Multiple Access,CDMA)
- 随机接入协议(Random Access Protocols)
- 时隙ALOHA(slotted ALOHA):把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送.

- ALOHA:

- 载波监听多路访问(Carrier Sense Multiple Access,CSMA)
- 具有碰撞检测的载波监听多路访问(Carrier Sense Multiple Access with Collision Detection,CSMA/CD)
- 具有碰撞避免的载波监听多路访问(Carrier Sense Multiple Access with Collision Avoidance,CSMA/CA)
- 时隙ALOHA(slotted ALOHA):把时间分成若干个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送.
- 轮流协议(taking-turns protocols)
- 轮询协议(polling protocol)。主节点以循环的方式轮询(poll)每个节点。
- 令牌传递协议(token-passing protocol)。传递令牌,有令牌才发送帧。
3、交换局域网
六、物理层
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐



所有评论(0)