一.网络常见应用分类
批量式的应用程序
协议:HTTP、FTP、TCP
应用:文件共享、下载
流量大,占用带宽大,对延迟、丢包不敏感
交互式应用程序
应用:QQ聊天,网页游览、远程管理
流量小,对延迟敏感
实时应用程序
应用:语言通信、视频通信
语音流量小,视频流量大,保证延迟低、丢包率低,不需要重传输
协议:UDP,上层走RTP。
网络设计考虑的因素
速度、价格、安全性、可靠性、可扩展性、拓扑结构
常见的拓扑结构:
星型:缺点:单点交换机故障导致整个网络故障
全网状互联:防止单点故障,缺点:价格贵
部分互联,兼顾了故障转换性和开销
二.数据包的转发
1.同一网段的数据包转发
数据从应用层到底IP层,IP层使用IP编址对数据包进行封装,同时IP协议判断数据包的转发间两台设备是否在同一个网段,如果属于同一个网络,则将数据包发给数据链路层。
在数据链路层,系统查询ARP表看是否有目标IP的MAC地址,如果没有则以广播方式发送ARP请求获取目标主机MAC地址,
得到MAC地址后数据链路层进行二层封装,传递给物理层发送
2.不同网段的数据包转发
如果IP协议判断数据包的目标ip地址在另一个网段中,则将数据包发送给网关,由网关也就是路由器进行转发。封装后传递给二层。
二层的封装中目标MAC地址被写成网关的MAC地址(如果没有网关的MAC地址就进行ARP请求获取),之后传递给物理层到网关。
网关查询其路由表,选择合适的接口转发数据包。
总结:不同网段直接通过网关进行转发,每经过一个网关,目标MAC地址都会变,但目标IP地址不会变