文章目录
1. 计算机网络体系结构
1.1 OSI体系结构
OSI体系结构,意为开放式系统互联。这个模型把网络通信的工作分为7层,从下往上分别是物理层,数据链路层,网络层,运输层,会话层,表示层和应用层。1至4层被认为是低层,这些层与数据移动密切相关。5至7层是高层,包含应用程序级的数据。每一层负责一项具体的工作,然后把数据传送到下一层。
1.2 TCP/IP体系结构
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)体系结构是指能够在多个不同网络间实现的协议簇。网络部分瘫痪时仍保持较强的工作能力和灵活性。这种应用环境导致了一系列协议的出现,从而使不同类型的终端和网络间能够进行有效通信。实际上,Internet已经成为全球计算机互联的主要体系结构,而TCP/IP协议是 Internet 的代名词,是将异种网络、不同设备互联起来,进行正常数据通信的格式和大家遵守的约定。
TCP/IP 协议包括两部分:传输控制协议和网际协议。TCP/IP 的通信任务组织成 5个相对独立的层次:应用层、传输层、网际层、数据链路和物理层,其中网络接口层和物理层常称为物理网层。
1.3 两者间对应关系
2. 数据包收发流程
2.1 应用层读取数据包
2.2 物理层接收数据包上报到传输层
2.3 应用层发送数据包
2.4 传输层到物理层发送
3. 路由
数据到了网络层会先匹配路由表(默认有三张表local、main、default),先匹配loacl表,loacl表中匹配到的数据会上上层协议栈,匹配不到的走main表,匹配不到再走default表(default表一般为空);
根据能否随网络的开销或拓扑变化动态地进行调整变化,将路由算法分为两大类:静态路由、动态路由;
3.1 静态路由
静态路由是指由网络管理员手工配置的路由信息。当网络拓扑变化时,不会自动维护路由
信息。静态路由信息在缺省情况下是私有的,不会传递给其他的路由器,网络管理员可以通过路由器设置为共享。静态路由一般适用于比较简单的网络环境,在这样的环境中,网络管理员易于清楚地了解网络的拓扑结构,便于设置正确的路由信息;
3.1.1 配置指令
3.1.1.1查看路由
都可以加table 不加默认为操作main表
ip route list
ip route show
ip route 查看output/forward表
ip route show table local 查看input表
3.1.1.2 查看指定网段的路由
ip route show 网段/掩码长度
3.1.1.3 增加路由
ip route add 网段/掩码长度 via 下一跳地址
3.1.1.4 修改路由
ip route change 网段/掩码长度 via 下一跳地址
ip route replace 网段/掩码长度 via 下一跳地址
3.1.1.5 删除路由
ip route del 网段/掩码长度 via 下一跳地址
3.1.1.6 清空指定网络的路由
ip route flush 网段/掩码长度
3.1.1.7 指定路由metirc
ip route add 192.168.2.0/24 via 192.168.1.15 metric 10
3.1.1.8 添加默认路由
ip route add default via 下一跳地址
3.1.1.9 配置默认路由
ip route add default via 下一跳地址 dev 网卡名称
3.2 动态路由
动态路由是指路由器能够根据网络拓扑变化,动态维护自己的路由表。动态路由机制的
运作依赖路由器的两个基本功能:路由表的维护和路由信息交换;
常见的动态路由协议 RIP、OSPF、BGP等;
3.3 metric
路由开销,大都是在动态路由中用到,是路由算法用以确定到达目的地的最佳路径的计量标准,如路径长度、带宽大小、可靠性等。
路由算法使用了许多不同的metric以确定最佳路径。复杂的路由算法可以基于多个metric选择路由,并把它们结合成一个复合的metric。常用的metric如下:
3.3.1 路径长度
路径长度是最常用的路由metric。一些路由协议允许网管给每个网络链接人工赋以代价值,这种情况下,路由长度是所经过各个链接的代价总和。其它路由协议定义了跳数,即分组在从源到目的的路途中必须经过的网络产品,如路由器的个数。
3.3.2 可靠性
可靠性,在路由算法中指网络链接的可依赖性(通常以位误率描述),有些网络链接可能比其它的失效更多,网路失效后,一些网络链接可能比其它的更易或更快修复。任何可靠性因素都可以在给可靠率赋值时计算在内,通常是由网管给网络链接赋以metric值。
3.3.3 延迟
路由延迟指分组从源通过网络到达目的所花时间。很多因素影响到延迟,包括中间的网络链接的带宽、经过的每个路由器的端口队列、所有中间网络链接的拥塞程度以及物理距离。因为延迟是多个重要变量的混合体,它是个比较常用且有效的metric。
3.3.4 带宽
带宽指链接可用的流通容量。在其它所有条件都相等时,10Mbps的以太网链接比64kbps的专线更可取。虽然带宽是链接可获得的最大吞吐量,但是通过具有较大带宽的链接做路由不一定比经过较慢链接路由更好。例如,如果一条快速链路很忙,分组到达目的所花时间可能要更长。
3.3.5 负载
负载指网络资源,如路由器的繁忙程度。负载可以用很多方面计算,包括CPU使用情况和每秒处理分组数。持续地监视这些参数本身也是很耗费资源的。
3.3.6 通信代价
通信代价是另一种重要的metric,尤其是有一些公司可能关系运作费用甚于性能。即使线路延迟可能较长,他们也宁愿通过自己的线路发送数据而不采用昂贵的公用线路。