| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> 【大话传送网-学习笔记】IP -> 正文阅读 |
|
[网络协议]【大话传送网-学习笔记】IP |
目录 ????????随着无线数据业务的快速发展,电话网和计算机网逐渐融合,分组传送网的原型是IP网,是数据网设备二层交换、三层路由技术发展来的,IP数据网用于解决不同地点的计算机(主机)互相通信的问题。 1.IP与MSTP????????计算机网络是一个有着巨大的用户群体的另一个通信“王国”,这个“王国”被IP技术统治,其业务靠宽带接入网接入,依托IP数据网承载。移动电话网是E1的天下,移动网业务接入之后靠MSTP网承载。IP数据网基本是和MSTP网平行的,除了都需要依靠OTN系统承载之外,两者的联系并不多。 MSTP向IP发展的必然原因在于以下三点: ????????①从带宽数据角度,一个基站的话音业务用两个E1基本足够,而数据业务的单基站带宽从0发展到超过100M,这两个业务的数量级不在一个层次上,两种业务要承载于一个网络上时,技术的选择一定倾向于业务量大的一方 ????????②从技术特点角度,SDH为话音业务而生,IP为数据业务而生,两者的技术特点完全不同。SDH的刚性带宽,发送的是固定频率的帧,IP发的是数据包(Packet,也叫分组),数据量大就多发,数据量小就少发,对于突发性很强的数据业务来说,可以实现带宽的统计复用(把公共信道的时隙实行“按需分配”,动态地分配信道时隙),提高带宽利用率。 ? ? ? ? ③从设备集成度来看,SDH的常见数据接口板一般是两口GE或者8口FE,这还是核心汇聚层设备;而分组的接入层设备单板就是8口GE,汇聚层可以达到24口、48口GE等,可见,在承载数据业务的前提下,分组传送网基本可以“秒杀”MSTP。 2.二层交换????????关于计算机网络互联,ISO定义了OSI(开放系统互联)7层参考模型,其中应用、表示、会话上三层属于资源子网,物理、链路、网络下三层属于通信子网,传输层是资源子网和通信子网之间的桥梁。通信的连接与之类似,上面的连接都是逻辑的,最后都得下到物理层。 ????????站在OSI模型的角度看,MSTP和OTN虽然分了很多层,对应于OSI层级来讲,全都属于物理层,没有地址的概念,1条E1也好,10G也好,到了一个站点设备并不负责去分析你应该走哪条路,路径都是网管给配置好的,设备不会思考,只管执行命令,MSTP和OTN的不同层级只是传送的颗粒大小有所区别。 2.1 底层直连——物理层? ? ? ? “只要物理连接没问题,物理层就完成任务了” ? ??举例: ? ? ? ? ①假如只有A和B两台主机需要通信,只需要通过网线将两个主机的网卡连接在一起就可以,中间不需经过交换机、路由器等设备。主机A和B的通信不依赖地址,就是顺着网线把信号传到对端的网卡上。这里说的是不依赖地址,而不是没有地址,每一层该有的地址都会有,不依赖地址的意思是说,不管地址是什么,数据都会到达对方那里,而如果到了对端你的地址写错了,对端也是不理你的,这也就是物理层通了,但上层没通。 ? ? ? ? ②如果A和B的通信再加入主机C和D,A、B、C、D一共4台主机要互相通信,我们也可以将A、B、C、D通过集线器(Hub)连接到一起,相当于4台主机共享一条总线,彼此间时分复用,这时网络还是工作在物理层。由于大家都连在同一条线上,A如果说话,B、C、D全部都能听到,也就是大家处于同一个广播域,而如果两台主机同时说话,信号就会发生撞车,这种情况叫作大家处于同一个冲突域。 ????????集线器的特点:所有端口处于同一个冲突域和广播域。 2.2 二层交换——交换机????????二层交换是根据MAC地址(物理地址)转发的。 ????????MAC地址:每一个主机的网卡和网络设备的接口在出厂时都预先分配了一个MAC地址,是一个独一无二的标识,一般情况下不会更改。MAC地址共48bit,为了读写方便通常用12个十六进制数字来表示,比如00-EO-FC-00-00-06,其中前24位由国际标准组织IEEE分配给设备厂商,后24位由厂商自己定义。 ? ? 举例: ????????同样是A、B、C、D这4台主机通信,如果把集线器换成二层交换机,A、B、C、D分别连接到交换机的1~4号端口下,这时4台主机就组成了一个小的二层局域网,虽然从外观上看交换机和集线器几乎一模一样,但是主机间通信的机制完全不同,具体如下图所示。 ????????上图过程当中,交换机得到了A和D的两个MAC地址,下一次发往A和D的数据将直接发到所对应的端口,不再广播寻找。每个主机发送给交换机的帧里都有源MAC地址,相当于自报家门,交换机根据源MAC地址建立MAC地址表这个过程叫作学习,经过了如此这般若干个回合之后,交换机对于各个端口和主机的对应关系已经熟记于心,形成了MAC地址和端口的对应表,也就是完整的MAC地址表。 ? ? ? ? 交换机的特点:所有端口处于同一个广播域(A说话,BCD都能听到),同时实现了冲突域的隔离(ABC同时说话时,交换机会逐个缓存,避免冲突)。 2.3 二层交换——VLAN????????二层交换是一个局域网的技术,我们通过二层交换机,可以组建校园网、办公网等小型网络,如果一个交换机的接口数量不够,或者各个办公室之间距离稍有点远,可以采用交换机级联的方式组网,交换机下面再下挂交换机。由于交换机所有端口都处于同一个广播域,级联组网的数量越大,广播越麻烦。此时可以采取某种技术,将一个局域网的广播域的范围缩小,这就是VLAN。 ? ? ? ? 定义:虚拟局域网(VLAN,Virtual Local Area Network),是一种将局域网从逻辑上划分成一个个更小的局域网,VLAN之间在二层上是隔离的,从而实现虚拟工作组的数据交换技术。从物理上来说,所有的主机下挂在一个交换机下,逻辑上通过VLAN划分,相当于将一个交换机分成若干个逻辑上独立的交换机,各个部门的主机之间隔离开,不会收到其他VLAN的广播。 ? ? ? ? 从定义上可以看出,VLAN之间在二层之间是隔离的,当VLAN之间有通信需求时,就要用到更高层面的互通——三层路由。 3.三层路由? ? ? ? 不同LAN、VLAN之间的互通需要三层路由器来实现,路由器之间发送的是IP数据报,三层网络通过IP地址实现寻址功能。 3.1 IP地址? ? ? ? 定义:IP地址是IP提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址(和物理地址对应),一台主机的IP地址随着其所处的位置不同而更改,我们每换一个办公地点或者酒店就会被分配一个新的IP地址,就像通信地址会随着我们所处城市的改变而变化。 ? ? ? ? 特点:一个IP地址可以包含多台主机,比如一个A类地址110.0.0.0就包含了从110.0.0.1至110.255.255.254共1600多万台主机,在路由器的路由表中只要一行就可以表达,而MAC地址和主机是一对一的关系,无法去合并表示,有1600万台主机通过二层交换机组网,交换机的MAC地址表就要有1600万行。 ? ? ? ? 组成结构:IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”,也就是4个字节,为了读写方便,IP地址通常转换为“点分十进制”表示成(a.b.c.d)的形式,其中,a、b、c、d都是0~255之间的十进制整数,比如192.168.0.1。 ????????每类地址的网络号和主机号的位数不同,网络号的位数决定了该类网络的数量,主机号的位数决定了该类网络容纳主机的个数,就像手机号一样,手机号的位数就决定了最大用户数量。 ????????InternetNIC规定一部分IP地址用于局域网使用,也就是私网IP,不在公网中使用,分别是:10.0.0.0~10.255.255.255、172.16.0.0~172.31.255.255、192.168.0.0~192.168.255.255。 3.2 子网? ? ? ? 定义:子网是将IP地址中的主机号部分再划出一些作为子网号,这样一个IP地址又可以划分成多个子网来使用,比如一个256的C类地址可以分成4个64台主机的子网,也可以分成8个32台主机的子网,这样IP地址的使用效率大大提高。 ????????有时一个C类地址不够用,要用两个C类地址,就需要将两个C类地址合并代表这一个网络,要从网络号中挪出一部分作为主机号使用,即突破传统的束缚和界限,需要设备能够了解并认可这种做法,需要支持无类域间路由(CIDR,Classless Inter-Domain Routing)。 ? ? ? ? 子网划分:在接入一个网络的时候,需要先设置子网掩码,网络设备通过子网掩码能够计算出IP地址中哪些位表示子网号,哪些位是主机号,从而将一个IP地址细分使用。 ????????通过IP地址、子网掩码、VLAN将所有的主机划分成一个个网络或者子网,也就是局域网,无数个局域网组成了广域网。同一个局域网的主机处在一个封闭空间里,彼此都是内网主机,而其他网络的主机对于本网的主机来说就都是外网。 3.3 网关????????在局域网内部,主机间通过二层交换的方式通信,而不同局域网的主机之间在二层是彼此绝缘的,利用二层交换永远联系不上外网主机,需要通过三层路由去实现。 ? ? ? ? 定义:网关,顾名思义,就是网络关口,也就是内网和外网之间的那道门,是二层网络和三层网络之间的桥梁,所有要出入本网络的数据均由网关来转发,就像海关一样,里面和外面的世界我不管,但是要进来和出去的,就必须经过我这一道关口。 ????????功能:如果一个主机需要和另外一台主机通信,通过IP地址发现目的主机和自己不在一个网段内,就会将数据包丢给网关。数据包的目的IP是目标主机的IP地址,而目的MAC地址是网关的MAC地址。如果主机并不知道网关的MAC地址,就要发送ARP请求,通过网关的IP地址获得网关的MAC地址。 ????????路由器与网关:内网的主机要与外网的主机通信,首先得经过网关。对于某一个网络来说,路由器和它相连的那个接口就是这个网络通往外部的网关,路由器这个接口的IP地址就是这个网络的网关地址,也就是我们在上网之前都要配置的网关地址。路由器的各个接口连接的是一个个网络,是不同网络之间沟通信息的中转站。 3.4 路由? ? ? ??“发往外网的数据包到达了网关,从此就进入了一个IP的世界,规则也从二层交换变成了三层路由。” ? ? ? ? ①静态路由是靠管理员手工配置的,每个IP地址对应的出口都是一条一条地由网管敲上去的,对于路由器就是死命令,和MSTP的业务配置有些类似,如果网络结构发生变化,或者某条路断了走不通,静态路由是不会变通的,依然按照路由表去严格执行命令。如果需要改变路由条目,就需要网管上重新修改。 ? ? ? ? ②动态路由是路由器根据路由协议来交换路由信息。路由器之间使用某种算法传递或者计算生成路由表,动态路由协议是智能的、自动的,在网络节点发生变化或链路故障时,路由协议会自动计算和更新拓扑结构,重新计算可用的路由,而不需要人工维护。 ? ? ? ? ③缺省路由也是通过网管配置的,当目的IP地址在路由表中查不到时,路由器不知道数据包该往哪儿发的时候,就按缺省路由转发。 ????????路由器查找路由顺序为:静态路由一动态路由一缺省路由。路由的过程就像我们在高速公路上行驶,在经过每一个岔路口(路由器)的时候,都会有一个指示牌(路由表),指引我们到正确的方向。其实路由器并不知道最终目的地具体在哪里,也不知道从起点到终点全程的路线怎么走,只要我们在每个岔路都知道选择正确的方向,就一定会一步一步地接近目的地。 ????????通过“二层交换+三层路由”的方式,一个局域网可以只使用一个公网地址,而在局域网内部可以使用私网地址,可以节省大量的IP地址资源。数据包从内网到外网时,需要做一个私网到公网地址的转换(NAT,Network Address Translation,网络地址转换)。 3.5 动态路由协议? ? 动态路由协议分类(①②③): ? ? ①按照使用区域的不同,分为内部网关协议(IGP,Interior Gateway Protocol)和外部网关协议(EGP,Exterior Gateway Protocol),也叫域内和域间路由协议。其中的 “域”指自治域(AS,Autonomous System),自治域是在单一技术管理体系下的多个路由器的集合。自治域就是可以由同一个管理者去管理的多个路由器。在一个自治域内使用IGP,比如RIP、IS-IS、OSPF,而不同自治域之间,联通和移动的网络要互通,就要使用EGP去传递路由。 ? ? ②按照算法不同可以分为距离矢量协议(Distance Vector)和链路状态路由协议(Link State)。对于距离矢量协议来说,距离多少是评判路由器路由好坏的唯一标准,这个“距离”是指数据包到达目的地经过了多少个路由器,也就是跳数,如果是路由器的直连网络,跳数就是1,每经过一台路由器,跳数就加1。但有时候只靠距离是不足以反映网络真实情况的,马路有宽有窄,有的畅通,有的拥堵,距离最近的路并不一定能够最快到达,网络也是一样,如果需要根据路况信息去选择最优的路径,就需要使用链路状态协议。 ? ? ③路由协议还分为公有协议和私有协议,RIP、OSPF、IS-IS等就是公有协议,大家都可以用;而像IGRP、EIGRP这种是思科的私有协议,只有在思科的设备上才能用。 ????????RIP协议:①路由器先在自己的路由表里写上自己“邻居”的名字,并注明距离为1。②路由器“邻居”之间继续交流各自收集到的信息,收到自己路由表中没有的路由就会添加到路由表中。如此一番之后,大家都知道了到达每个网络的出口、下一跳、距离,就形成了完整的路由表。③路由器隔一段时间会重新发送一次路由更新,大家收到了就知道该路由正常,但如果某个路由在规定的时间内仍然没有更新,路由器就认为该路由已经失效,要是再过一会仍然没收到,就将该条路由从路由表中删除。 ? ? ? ? OSPF协议:①每个路由器通过Hello机制认识了自己的左邻右舍。②将自己的“邻居”的信息形成链路状态广播(LSA,里面能看出发这个信息的路由器有哪些“邻居”以及对应的链路Cost值)之后泛洪(将某个接口收到的数据流从除该接口之外的所有接口发送)出去。收到信息的路由器再继续泛洪,让LSA传到每一个路由器。所有的路由器都收到了其他路由器的所有的LSA后,形成了链路状态数据库(LSDB,Link State DataBase)。整张网络的所有路由器的连接关系就呈现出来了。③用SPF算法计算最短路径,路由表就形成了 ? ? ? ? BGP协议:上面的两个IGP完成了一个自治域(AS)内设备路由的建立,AS之间依靠EGP传递路由,而BGP(边界网关协议)是目前唯一使用的EGP。EGP是协议类型,BGP是具体的协议名称。BGP有两种连接关系:一种是IBGP,就是同一个AS内的BGP。另一种是EBGP,是不同AS之间的BGP。IBGP就像是中国的外交官之间的关系,而EBGP就像是中国和外国外交官之间的关系。 4.IP与MPLS? ? ? ? IP是一张面向无连接的网,是一张尽力而为的网络。但对于“电信级”业务,要的不是尽力而为,要的是必须保证。传送网以强大的保护倒换作为保障,业务恢复的时间小于50ms。而IP网一条链路断了,可能要几秒甚至几分钟去重新计算路由,所以需要一个办法,让无连接的IP网变成有连接,以便实现维护管理、保护倒换等传送网所要求的一系列功能,提高可靠性,实现这一步质变的技术基础就是MPLS。 4.1 MPLS? ? ? ? 原理:例如100个人过来问路,他们的目的地是同一个地方,都是去东大街,就没有必要给每个人都说一遍东大街怎么走,只要给第一个人指路之后,告诉后面的人,全部跟着第一个人走就好了。对于数据包的路由,我们同样可以只对第一个数据包进行路由选择,后面的相同目的地的数据包都贴上相同的标签,按照第一次路由的结果进行转发,这就是MPLS。 ????????对于MPLS网络来说,到相同的目的地的数据包被分发相同的标签,走相同的路径,这样就在IP网中打通一条虚拟的“路”(隧道),也就是将IP网从无连接变成了有连接的网络 ????????IP数据包在进入MPLS网络中就被披上了另外一层外衣(标签),在穿过整个MPLS网络时,每一个设备不再依靠IP地址路由,而是通过这个标签一步步到达出口,到了出口处脱下外衣,该怎么走还怎么走。 ? ? ? ? 定义:多协议标签交换(MPLS,Multi-Protocol Label Switching),是一种用标签交换代替路由,实现数据包快速转发的技术体系,价值在于能够在一个无连接的网络中引入连接模式的特性。 4.2 MPLS网络? ? ? ? MPLS网络组成如下图所示,在MPLS边缘的路由器(LER)将IP地址映射为简单的、具有固定长度的标签,将标签添加到二层和三层帧格式之间,在MPLS网络的内部标签交换路由器(LSR)使用标签快速交换代替路由。 ? ? ? ? 其中主要包括①FEC②LSP③LER④LSR: ? ? ? ? ①FEC:转发等价类(Forwarding Equivalence Class)。如果入口路由器收到的数据包目的IP相同,都是到达同一子网的,则这些数据包就属于同一类,叫作转发等价类,原理中的100个人就属于同一个转发等价类。 ? ? ? ? ②LSP:标签交换路径,一个FEC在MPLS网络中走过的路径,即原理中100个人同时走过的路。 ? ? ? ? ③LER:标签边缘路由器。LER连接MPLS域和非MPLS域,实现FEC划分,IP包进来为之分发标签,离开时为其剥去标签露出IP头。 ? ? ? ? ④LSR:标签交换路由器(Label Switching Router)。MPLS区域内部的路由器,负责标签交换和标签分发。LSR和IP路由器的功能一样,IP路由器看IP地址,LSR看标签。 5.VPN????????实际应用中,运营商的传送网要承载无线、宽带、大客户专线等业务,可能在一个站点下面同时下挂了某大客户CE路由器、移动基站(NodeB)、宽带接入网OLT等设备,这些业务都从此站点要去往中心局。 ????????我们需要将同一条隧道承载的业务彼此隔离开,让基站和企业用户之间彼此感受不到对方的存在,这就需要用到VPN(虚拟专用网)技术,如下图所示。 5.1 概念? ? ? ? ?VPN是一种逻辑上的专用网络,但本身却不是一个独立的物理网络。VPN就是在利用公共网络建立虚拟私有网,是用某种技术在公网上面建立一条条的虚拟连接,将公司的各个分部连接起来。VPN用户与其他用户视而不见,也就是逻辑上的隔离。 5.2 MPLS VPN????????MPLS VPN,顾名思义就是用MPLS技术去实现VPN,是VPN的一种实现方式。 ????????运营商网络内部的设备分为两种:P(运营商核心路由器)和PE(运营商边缘路由器)。这里说的P和PE是VPN对不同位置和功能定位的设备的叫法,一般情况下,P和MPLS里的LSR对应,PE和MPLS里的LER对应。P和PE是从运营商设备和用户设备之间关系的角度出发,而LER和LSR是从标签的分配、交换的角度出发,两者强调的重点不同。CE是用户边缘设备,也就是用户自己的设备中和运营商相连的那个。一个PE下的一个VPN用户可能有一个或多个CE,这些CE就称之为一个Site(站点)。 ? ? ? ? VPN网元举例:比如A公司北京有两台路由器,上海有三台路由器,想通过运营商去开通一个VPN,将这5台路由器连接起来。这5台路由器都连接运营商设备,那它们就都是CE,北京的两台连接到运营商的一台路由器上,运营商的这个设备就是PE。上海同样也有一个PE和三个CE连接,A公司北京这两台CE叫作一个Site,上海那三台CE也是一个Site,而A公司的业务从北京到上海途经的运营商设备,除了这两个PE,其他设备就是P了,如下图所示。 ?????????如果还有一个B公司,同样也有北京和上海分公司,这A、B两个公司在北京和上海的CE都接入的是相同的PE设备,那网络需要通过私网标签实现A、B公司的业务隔离。 ? ? ? ? VPN业务隔离:用户数据包虽然在MPLS网络同一隧道中传送,但是在网络和用户CE连接处为每个VPN都分配不同的私网标签,PE认得这个标签,也就达到了隔离的效果,如下图所示。 ?????????数据传输过程中,内层标签只由PE设备进行处理,P设备并不理会它的存在。两个数据包经过同样一个路径从北京到上海,彼此擦肩而过,世间最远的距离莫过如此,这也就是VPN要达到的效果:隔离。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 3:54:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |