益阳seo网站建设,南宁网站建设_seo优化服务公司,大专计算机网络技术就业方向,企业网站建设 南通一. 网络层的基本概念
网络层主要负责将数据从源端主机发送到目的端主机。在这一过程中#xff0c;网络层要解决的关键问题是数据包的路由选择#xff0c;即确定数据包通过互联网的最佳路径。 1.1 网络层的信息类型
数据包#xff1a;这是网络层传输的主要形式#xff0c…一. 网络层的基本概念
网络层主要负责将数据从源端主机发送到目的端主机。在这一过程中网络层要解决的关键问题是数据包的路由选择即确定数据包通过互联网的最佳路径。 1.1 网络层的信息类型
数据包这是网络层传输的主要形式包含了从源端到目的端的实际用户数据。数据包通常包含头部和负载两部分。头部包含了源地址、目的地址、协议类型等关键信息用于指导数据包在网络中的传输而负载则是用户数据本身。控制信息这类信息主要用于动态路由协议如RIP、OSPF等。这些协议通过交换路由表信息来帮助路由器发现并维护到达其他网络的最佳路径。
1.2 数据包服务
网络层向其上层只提供简单灵活的, 无连接的, 尽最大可能交付的数据报服务。网络层不提供服务质量的承诺。 二. IP协议
2.1 IP地址
IPv4地址32位通常以点分十进制形式表示分为网络部分和主机部分使用子网掩码区分。例如192.168.1.1。IPv6地址128位通常以冒号十六进制形式表示分为前缀和接口标识符支持零压缩和前导零省略。例如2001:0db8:85a3:0000:0000:8a2e:0370:7334。
2.2 网段划分
2.2.1 分配IP地址
这种分类方法是在IPv4地址的早期设计中引入的目的是为了方便网络管理和地址分配。根据IP地址的第一个字节的值IPv4地址被划分为五类A类、B类、C类、D类和E类。 A类地址 范围1.0.0.0 到 126.255.255.255 网络部分第一个字节8位 主机部分剩余三个字节24位 默认子网掩码255.0.0.0 或 /8 用途适用于大型网络B类地址 范围128.0.0.0 到 191.255.255.255 网络部分前两个字节16位 主机部分剩余两个字节16位 默认子网掩码255.255.0.0 或 /16 用途适用于中型网络C类地址 范围192.0.0.0 到 223.255.255.255 网络部分前三个字节24位 主机部分最后一个字节8位 默认子网掩码255.255.255.0 或 /24 用途适用于小型网络D类地址 范围224.0.0.0 到 239.255.255.255 用途用于多播组播通信E类地址 范围240.0.0.0 到 255.255.255.255 用途保留用于实验和研究 但这种分类方法存在一些明显的局限性 地址浪费每个类别的地址空间分配固定导致地址资源的浪费。灵活性差不能很好地适应不同规模的网络需求。 2.2.2 无类域间路由(CIDR)
无类域间路由是一种IP地址分配和路由的方法它消除了传统分类IP地址的固定界限允许更灵活地分配和使用IP地址。CIDR的主要目标是提高IP地址的利用率减少路由表的大小并简化网络管理。
CIDR 的概念:
可变长度子网掩码 在CIDR中子网掩码的长度可以变化不再局限于传统的8位、16位和24位。这意味着网络部分和主机部分的长度可以灵活调整。例如一个网络可以使用 /24 子网掩码(255.255.255.0)而另一个网络可以使用 /26 子网掩码(255.255.255.192)。网络前缀CIDR使用网络前缀来表示一个IP地址块。网络前缀是一个IP地址的前N位后面跟一个斜杠和一个数字表示前缀的长度。例如192.168.1.0/24 表示前24位是网络前缀剩下的8位是主机部分。 工作机制: 地址分配 ISP分配互联网服务提供商ISP可以分配一个CIDR地址块给客户。例如ISP可以分配 192.168.1.0/24 给一个客户。子网划分客户可以根据需要进一步划分子网。例如192.168.1.0/24 可以划分为两个 /25 子网192.168.1.0/25 和 192.168.1.128/25。 路由聚合 聚合多个网络CIDR允许将多个连续的IP地址块汇总成一个更大的网络前缀。例如如果有两个网络 192.168.1.0/24 和 192.168.2.0/24可以将它们汇总为 192.168.0.0/23。减少路由表大小通过路由聚合路由器只需要维护一个汇总的路由条目而不是多个具体的路由条目从而减少路由表的大小提高路由效率。
2.3 IP报文的格式
IPv4报文的报头长度为20到60字节其中基本报头长度为20字节可选字段会增加报头的长度。 首部字段:
版本 长度4位 功能标识IP协议的版本对于IPv4这个字段的值为4。首部长度 长度4位 功能表示IP报头的长度以32位4字节为单位。最小值为5即20字节最大值为15即60字节。服务类型 长度8位 功能用于指示数据包的优先级和服务类型。这个字段现在通常被称为DS字段。总长度 长度16位 功能表示整个IP数据包的长度包括报头和数据部分以字节为单位。最大值为65535字节。标识 长度16位 功能用于唯一标识发送主机发出的数据包。主要用于分片和重组。标志 长度3位 功能 第一位保留必须为0。 第二位如果设置为1表示不允许分片。 第三位如果设置为1表示还有后续的分片。片偏移 长度13位 功能表示该分片在原始数据包中的位置以8字节为单位。生存时间 长度8位 功能表示数据包在网络中可以经过的最大跳数。每经过一个路由器TTL值减1当TTL值为0时数据包会被丢弃。协议 长度8位 功能表示上层协议的类型例如TCP6、UDP17、ICMP1等。头部校验和 长度16位 功能用于检测IP报头的完整性。注意这个校验和不包括数据部分。源地址 长度32位 功能表示发送数据包的主机的IP地址。目的地址 长度32位 功能表示接收数据包的主机的IP地址。选项 长度可变 功能用于携带额外的控制信息如路由记录、时间戳等。选项字段的存在使报头长度超过20字节。填充 长度可变 功能用于确保报头长度为32位的整数倍。
数据部分: 长度可变 功能包含上层协议的数据如TCP或UDP数据。
2.4 IP层分片
IP层分组是指在网络层中IP协议将上层传递下来的数据分割成适当大小的数据包并通过网络进行传输的过程。其中MTU定义了数据链路层帧中数据部分的最大长度IP层负责将数据包分割成适当大小的数据包。
IP层分片步骤如下:
接收上层数据 IP层从传输层接收数据。这些数据通常是较大的数据块需要被分割成适合在网络中传输的小数据包。封装IP头部 IP层为接收到的数据添加一个IP头部包含必要的控制信息如源IP地址、目的IP地址、协议类型等。IP头部的格式因IPv4和IPv6而异。检查MTU IP层获取下一跳网络接口的MTU值。MTU定义了数据链路层帧中数据部分的最大长度确保数据帧在物理网络中传输时不会过大从而避免传输错误和提高传输效率。分片 分片条件如果数据包的大小超过了MTUIP层会将数据包分片以便能够在网络中传输。分片过程 标识字段为每个数据包分配一个唯一的标识字段用于在接收端识别属于同一个原始数据包的分片。标志字段设置标志字段中的MF位表示还有后续的分片。DF位用于禁止分片如果设置为1数据包不能被分片否则会被丢弃。片偏移字段表示该分片在原始数据包中的位置以8字节为单位。 传输分片 封装分片每个分片都被封装成一个新的IP数据包包含新的IP头部。发送分片每个分片通过网络接口发送到下一跳路由器或最终目的地。 重组 接收分片接收端的IP层接收到所有分片。重组过程 缓冲区管理接收端为每个数据包的标识字段创建一个缓冲区用于存储接收到的分片。分片排序根据片偏移字段将分片按顺序排列。完整性检查确保所有分片都已到达如果没有收到所有分片可能会发送ICMP“超时”消息。重组数据包将所有分片合并成一个完整的数据包并交给上层协议处理。
2.5 ARP协议
ARP是网络层的一个重要协议用于将IP地址解析为物理地址(MAC地址)。
2.5.1 ARP数据报的格式 硬件类型 长度2字节 功能表示使用的硬件类型。最常见的值是1表示以太网。协议类型 长度2字节 功能表示使用的协议类型。最常见的值是0x0800表示IPv4。硬件地址长度 长度1字节 功能表示硬件地址的长度。对于以太网MAC地址长度为6字节。协议地址长度 长度1字节 功能表示协议地址的长度。对于IPv4地址长度为4字节。操作类型 长度2字节 功能表示ARP操作的类型。常见的值包括 ARP请求ARP RequestARP响应ARP Reply 发送方硬件地址 长度6字节 功能发送ARP请求或响应的主机的MAC地址。发送方协议地址 长度4字节对于IPv4 功能发送ARP请求或响应的主机的IP地址。目标硬件地址 长度6字节 功能目标主机的MAC地址。在ARP请求中这个字段通常为0因为发送方不知道目标主机的MAC地址。在ARP响应中这个字段包含目标主机的MAC地址。目标协议地址 长度4字节对于IPv4 功能目标主机的IP地址。
2.5.2 ARP协议的工作原理 发送ARP请求 源主机A需要向目标主机B发送数据包但不知道B的MAC地址。A构造一个ARP请求包含自己的IP地址和MAC地址以及B的IP地址。A将ARP请求以广播形式发送到局域网内的所有设备。接收ARP请求 局域网内的所有设备都会收到ARP请求。每个设备检查请求中的目标IP地址是否与自己的IP地址匹配。发送ARP响应 目标主机B发现请求中的目标IP地址与自己的IP地址匹配。B构造一个ARP响应包含自己的IP地址和MAC地址。B将ARP响应以单播形式发送给源主机A。接收ARP响应 源主机A收到B的ARP响应从中提取出B的MAC地址。A将B的IP地址和MAC地址对添加到自己的ARP缓存表中。发送数据包 A使用B的MAC地址将数据包封装在以太网帧中并通过局域网发送给B。
2.6 ICMP协议
ICMP协议是一个网络层协议, 一个新搭建好的网络, 往往需要先进行一个简单的测试, 来验证网络是否畅通; 但是IP协议并不提供可靠传输。因此, ICMP正是提供这种功能的协议
2.6.1 ping
Ping 主要用于测试主机之间的可达性和延迟。
ping -c n example.com-c: n 表示向example.com发送n次ICMP请求。 2.6.2 traceroute
Traceroute 用于查看从源主机到目标主机的详细路径信息帮助诊断网络路径上的问题。
traceroute example.com三. NAT技术
NAT是一种网络技术它允许多个设备共享一个公共IP地址访问互联网同时隐藏这些设备的真实内部IP地址。NAT的主要目的是解决IPv4地址资源不足的问题并增强网络的安全性。
3.1 NAT的工作原理
地址转换
当内部网络中的设备尝试通过路由器访问外部网络时路由器会将内部设备的私有IP地址转换为公共IP地址。返程的数据包到达路由器后路由器再将公共IP地址转换回原始的私有IP地址并将数据包转发给正确的内部设备。
端口映射
为了区分来自同一内部IP地址的不同连接NAT会在转换过程中使用不同的端口号。这样即使多个内部设备使用相同的公共IP地址路由器也能正确地将外部响应数据包发送给正确的内部设备。这种机制称为端口地址转换(PAT)它是NAT的一种扩展形式。 3.2 NAT技术的缺陷
由于NAT依赖这个转换表, 所以有诸多限制:
无法从NAT外部向内部服务器建立连接。装换表的生成和销毁都需要额外开销。通信过程中一旦NAT设备异常, 即使存在热备, 所有的TCP连接也都会断开。
3.3 NAT和代理服务器
路由器往往都具备NAT设备的功能, 通过NAT设备进行中转, 完成子网设备和其他子网设备的通信过程。代理服务器看起来和NAT设备有一点像。客户端像代理服务器发送请求, 代理服务器将请求转发给真正要请求的服务器。服务器返回结果后, 代理服务器又把结果回传给客户端。
NAT和代理服务器的区别:
从应用上讲, NAT设备是网络基础设备之一, 解决的是IP不足的问题. 代理服务器则是更贴近具体应用, 比如通过代理服务器进行翻墙, 另外像迅游这样的加速器, 也是使用代理服务器。从底层实现上讲, NAT是工作在网络层, 直接对IP地址进行替换. 代理服务器往往工作在应用层。从使用范围上讲, NAT一般在局域网的出口部署, 代理服务器可以在局域网做, 也可以在广域网做, 也可以跨网。从部署位置上看, NAT一般集成在防火墙, 路由器等硬件设备上, 代理服务器则是一个软件程序, 需要部署在服务器上。
代理服务器一般分为两类: 正向代理, 反向代理。
3.3.1 正向代理
客户端配置代理服务器 客户端需要配置代理服务器的地址和端口号。这通常是在浏览器设置、操作系统网络设置或应用程序配置中完成的。客户端发起请求 客户端向正向代理服务器发送请求。请求中包含目标服务器的地址和端口号。正向代理服务器接收请求 正向代理服务器接收到客户端的请求后解析请求中的目标服务器地址和端口号。正向代理服务器转发请求 正向代理服务器根据解析到的目标服务器地址和端口号向目标服务器发起新的请求。目标服务器响应 目标服务器接收到请求后处理请求并生成响应数据包然后将响应数据包发送回正向代理服务器。正向代理服务器转发响应 正向代理服务器接收到目标服务器的响应数据包后将响应数据包转发给客户端。客户端接收响应 客户端接收到正向代理服务器转发的响应数据包完成整个请求和响应过程。
3.3.2 反向代理
客户端发起请求 客户端直接向反向代理服务器发送请求。客户端并不知道后端服务器的存在只知道自己在访问反向代理服务器的地址和端口号。反向代理服务器接收请求 反向代理服务器接收到客户端的请求后解析请求中的目标资源路径。反向代理服务器选择后端服务器 反向代理服务器根据配置规则如负载均衡算法、会话保持策略等选择一个合适的后端服务器。反向代理服务器转发请求 反向代理服务器将请求转发给选定的后端服务器。请求中可能包含一些额外的头信息用于传递客户端的原始请求信息。后端服务器响应 后端服务器接收到请求后处理请求并生成响应数据包然后将响应数据包发送回6反向代理服务器。反向代理服务器转发响应 反向代理服务器接收到后端服务器的响应数据包后将响应数据包转发给客户端。客户端接收响应 客户端接收到反向代理服务器转发的响应数据包完成整个请求和响应过程。
———————————————————— 感谢大家观看不妨点赞支持一下吧喵~ 如有错误随时纠正喵~