Network Layer(!)
网络层功能
网络层里最核心的两个功能是:路由(routing)与转发(forwarding)
- 路由选择:当分组开始从源主机发往目的主机,网络层必须决定分组该采用的路由或路径。(determine route taken by packets from source to dest. )
- 分组转发:当一个分组到达路由器输入链路时,需要将该分组转发到相应合适的输出链路上。(move packets from router’s input to appropriate router output)
网络层提供的两种服务
网络层可以为用户提供两种服务,一个是面向连接的服务,另一种则是无连接的服务。我们在现有的计算机网络体系结构中,网络层只能单独提供其中一个服务,两种服务同时提供是不存在的。网络层提供的是主机到主机的服务,运输层提供的是进程到进程的服务
在网络层提供面向连接的计算机网络被称为虚电路网络(virtual-circuit network)
,而提供无连接的计算机网络则被称为数据报网络(datagram network)
。
我们首先大致了解一下它们的特点:
虚电路网络(virtual-circuit network)
虽然因特网是一个数据报网络,但很多其他网络体系结构(ATM、帧中继)却是虚电路网络,因此在网络层使用连接,这些网络层连接被称为虚电路。
虚电路的组成如下:1)源和目的主机之间的路径(即一系列链路和路由器)2)VC号,沿着该路径的每段链路一个号码 3)沿着该路径的每台路由器中的转发表项。
如图所示,主机A请求网络与主机B建立一条虚电路,假设虚电路选择路径A-R1-R2-B,并为这三条链路分配VC号12、22、32,这这种情况下,当这条虚电路中的分组离开主机A,VC值12,离开R1,VC值22,离开R2,值32
数据报网络(datagram network)
在数据报网络中,每当一个端系统要发送分组,就为该分组加上目的端系统的地址,然后将分组推进网络中,无需建立任何虚电路,路由器不维护任何虚电路的状态信息。
现在给两者做个对比
路由器结构(Router architecture)
前面简单的了解了一下转发,现在详细了解一下。话不多说,先上图!
此图应该清楚的说明了路由器的内部结构和工作原理,它有四种组件构成:
- Input ports [输入端口]
- Output ports [输出端口]
- Switching fabric [交换结构]
- Routing processor [路由选择处理器]
输入端口要完成查找功能,在这里通过查询转发表决定路由器的输出端口,然后通过交换结构转发到输出端口。
在讨论上述转发机制的过程中,我们并没有提及任何特定的计算机网络,在此,我们应该了解一下,我们最常见的网络-因特网。
先放上一张图审视下网络层内部
由此可知因特网的网络层有三个主要组件:
- IP协议
- 路由选择部分(计算和维护转发表)
- ICMP(报告数据报中的差错和对默写网络层信息请求进行相应的设施)
我们一个一个看
IP部分
IPv4
IPv4,即普遍使用的IP协议,IP协议定义数据传送的基本单元—IP分组及其确切的数据格式。
IPv4数据报格式:
Tips:
一个IP分组由首部和数据两部分组成。首部的前一部分是固定长度的,共20字节,是所有IP分组必须具有的。在首部固定部分的后面是一些可选字段,其长度是可变的,用来提供错误检测及安全等机制。
IP数据包分片(fragmentation)
一个链路层数据报能承载的最大数据量称为最大传送单元(MTU)。因为IP数据报被封装在链路层数据报中,故链路层的MTU严格地限制着IP数据报的长度,而且在IP数据报的源于目的地路径上的各段链路可能使用不同的链路层协议,有不同的MTU。当IP数据报的总长度大于链路MTU,就需要将IP数据报中的数据分装在两个或更多个较小的IP数据报中,这些较小的数据报叫做片。
Expand:
MTU:maximum transmission unit
下面是分片的举例:
片 | 字节 | ID | 偏移 | 标志 |
---|---|---|---|---|
第一片 | 1480字节 | 777 | 0(表示插入的数据开始于字节0) | Flag=1(表示后面还有) |
第二片 | 1480字节 | 777 | 185(表示插入的数据开始于字节1480.185*8 = 1480 | Flag=1(表示后面还有) |
第三片 | 1020字节 | 777 | 370(表示插入的数据开始于字节370*8=2960) | Flag=0(表示这是最后一片) |
注意:为坚持网络内核保持简单的原则,IPv4的设计者决定数据报的重新组装工作放到端系统中,而不是在网络路由器中。
IPv4地址
连接在Internet中的每一台主机(或路由器)都分配一个32比特
的全球唯一的标识符,即IP地址。传统的IP地址是分类的地址,分为A、B、C、D、E
五类。都是由网络号和主机号组成。
网络号A:1-126 B:128-191 C:192-223 D:224-239 E:240-255
DHCP(the Dynamic Host Configuration Protocol)
我们先来看一下什么是DHCP,DHCP(Dynamic Host Configuration Protocol
),动态主机配置协议)它可以为客户机自动分配IP地址、子网掩码以及缺省网关、DNS服务器的IP地址等TCP/IP参数,简单来说,就是在DHCP服务器上有一个数据库,存放着IP地址、网关、DNS等参数。当客户端请求使用时,服务器则负责将相应的参数分配给客户端。以避免客户端手动指定IP地址。
来看下DHCP的工作过程,我们可以叫它dora
(不是动画片里那个=-=):
1.DHCP DISCOVER: 寻找服务器
当DHCP客户端第一次登录网络的时候或者是开机时,此计算机发现本机上没有任何IP地址设定,就会向网络广播去寻找DHCP服务器。该数据包的来源地址会为0.0.0.0,而目的地址则为255.255.255.255。
2. DHCP OFFER分配IP地址
当无线设备监听到客户端发出的寻找服务器的数据包后,它会从那些还没有分配出的IP地址里,选择最前面的的空闲IP,给客户端一个分配IP地址,但这里仅仅是分配,客户端还没有真正应用上。
3. DHCP REQUEST 请求使用
客户端收到无线设备发送回来的分配IP地址数据包,客户端会向网络发送一个ARP数据包,确认网络中没有其他机器使用该IP地址,如果已经有,则重复发送步骤1中的动作;如果没有,则接受该IP地址,并发送一个DHCP request数据包给无线路由器,也就是DHCP服务器,请求使用此地址。
4. DHCP ACK IP地址分配确认
当无线设备接收到客户端的DHCP request数据包之后,会向客户端发出一个DHCP ACK回应,以确认IP地址的正式生效,也就结束了一个完整的DHCP工作过程。
Tips:
DHCP是基于UDP的应用层协议,是即插即用的(plug-and-play)
NAT(network address translation)
网络地址转换(NAT)是通过将专用网络地址转换为公用地址,从而对外隐藏了内部管理的IP地址。它使得整个专用网只需要一个全球IP地址就可以与因特网连通,由于专用网本地IP地址是可重用的,所以NAT大大节省了IP地址的消耗
。同时,它隐藏了内部网络结构,从而降低了内部网络收到攻击的风险
。
ICMP(internet control message protocol)
为了提高IP数据报交付成功的机会,在网络层使用了网络控制报文协议ICMP
来允许主机或路由器报告差错和异常情况
。ICMP报文作为IP层数据报的数据,加上数据报的首部,组成IP数据报发送出去。ICMP协议是IP层协议
。
IPv6
二话不说先扔图。要解决IP地址耗尽的问题的措施有以下三种:1.采用无类别CIDR,使IP地址的分配更加合理;2.采用网络地址转换NAT方法以节省全球IP地址;3.采用具有更大地址空间的新版本IP协议IPv6。前两者只是延长了IPv4地址分配结束的时间,只有第三种方法从根本上解决了IP地址的耗尽问题。
所以说如果考试问你这个你就会了是吧
IPv6的主要特点如下:
1)更大的地址空间。IPv6将地址从IPv4的32位增大到了128位
2)扩展的地址层次结构
3)灵活的首部格式
4)改进的选项
5)允许协议继续扩充
6)支持即插即用(即自动配置)
7)支持资源的预分配
IPv6的最大特征还是在于它的保密性
Routing Algorithms
看到这里,大家可能又会倒吸一口凉气,毕竟还是有很多人和我一样看见算法就头疼,笔者也是很担心整理不好。前辈们你们是没事可做吗?为什么写这么多概念???
我们举步维艰,艰难地啃着概念...
那么问题来了,什么是路由算法?
你可能给出这样的回答:是在给定一组路由器及连接路由器链路的情况下,找出一条由源节点到目标节点的最佳路径。
我肯定会说你好棒棒
其实呢,路由算法分为两大类:非自适应路由算法和自适应路由算法。非自适应路由算法典型代表就是静态路由,而动态路由中所使用到的算法都属于自适应路由算法。而路由表是存储在路由器或者联网计算机中的电子表格或类似的数据库.路由表存储着指向特定那个网络地址的路径。
几种主要的路由算法:
静态路由算法:
1.最短路径路由算法(Shortest Path Routing).
2.扩散算法
动态路由算法:
1.距离矢量路由算法(Distance-Vector)
2.链路状态路由算法(Link-State)
Tips:
距离矢量路由算法(Distance Vector Routing,DV)是ARPANET网络上最早使用的路由算法,也称Bellman-Ford路由算法和Ford-Fulkerson算法,主要在RIP(Route Information Protocol)
协议中使用。我们可以记住一个常用的公式:dx(y)=min{c(x,v)+dvy}
链路状态路由协议是目前使用最广的一类域内路由协议。它采用一种“拼图”的设计策略,即每个路由器将它到其周围邻居的链路状态向全网的其他路由器进行广播。其中我们会了解到迪杰斯特拉(Dijkstra)算法,它便是其中一种用法,其核心基于最短路径。
我们这里不深入探讨算法的内涵,考试没那么变态,我们理解一些基本点就足够
这两种算法各有特点,分述如下:
- 报文复杂性(message complexity)。LS算法要求每个节点知道网络中每条链路的费用,DV算法要求在每次迭代时,在两个直接相连的邻居之间交换报文。
- 收敛速度(speed of convergence)。优劣显而易见
- 健壮性(robustness)。如果一台路由器发生故障,行为错乱或受到破坏时情况会怎样呢?对于LS算法,路由器能够像其连接的的一条链路广播不正确费用。一个节点也可损坏或丢弃他收到的任何LS广播分组作为LS广播的一部分。但是一个LS节点仅计算自己的转发表:其他节点为自己做类似的计算。这就意味这在LS算法下,路由计算是有些孤立的,提供了一定程度的健壮性。在DV算法下,一个节点可向任意或所有的目的节点通告其不正确的最低费用路径。DV算法中一个不正确的节点计算值会扩散到整个网络。
Hierarchical routing
为了解决路由表的规模问题(scale)和实现办公自动化(Administrative autonomy),我们来说明下分层路由的出现。
自治系统内部的路由选择称域内路由选择,自治系统之间的路由选择称域间路由选择。也就是我们常说的 intra-AS
和 inter-AS
因特网的路由协议
Intra-AS Routing(also known as interior gateway protocols [IGP])
我们来介绍常用的三种路由协议
RIP(Routing Information Protocol)
路由信息协议(RIP)是内部网关协议中最先得到广泛应用的协议,是一种分布式的基于距离向量的路由选择协议,其最大优点就是简单。缺点是RIP限制了网络的规模,它能使用的最大距离为15(16为不可达),除此之外开销很大。
OSPF (Open Shortest Path First)
开放最短路径优先协议是使用分布式链路状态路由算法的典型代表。OSPF收敛速度快,适应各种规模,将协议自身的开销控制到最小,同时也具有良好的安全性。
Tips:
OSPF是网络层协议,它不使用UDP或TCP而是直接IP数据报传送。
Intra-AS Routing:BGP
BGP (Border Gateway Protocol): 边界网关协议是不同自治系统的路由器之间交换路由信息的协议。边界网关协议常常应用于互联网的网关之间。路由表包含已知路由器的列表、路由器能够达到的地址以及到达每个路由器的路径的跳数。
边界网关协议BGP只能是力求寻找一条能够到达目的网络且比较好的路由,而并非要寻找一条最佳路由。BGP采用的是路径向量路由选择协议,它与距离向量协议和链路状态协议有很大区别。BGP协议是应用层协议,基于TCP的。
而BGP又分为了两种,我们迅速地看一下
eBGP —— (external Border Gateway Protocol) 外部边界网关协议,用于在不同的自治系统间交换路由信息。
iBGP —— (internal Border Gateway Protocol)的主要作用是向你的内部路由器提供更多信息。iBGP路由器必须以全网状结构相连,以防止路由环回。如果使用了路由反射器或路由联盟,那么iBGP网状结构可能遭遇收敛问题,而导致路由黑洞。
Broadcast and Multicast Routing
广播路由选择需要提供一种从源结点到网络中的所有其他结点交付分组的服务。而多播是一对多的关系,是相对于子网的所有节点而言。
一笔带过吧,说多了心痛。
Test
Q: 转发表是如何得到的(what is the relationship between routing and forwarding)?
A: 路由选择算法决定了插入路由器的转发表的值,路由器接收路由选择协议报文,该信息被用于配置其转发表。(routing algorithm determines end-end-path through network,forwarding table determines local forwarding at this router)
Q: What are the three phases of virtual circuits?
A: 虚电路建立(VC setup)、 数据传送(Data transfer)、虚电路拆除(VC teardown)
Q: how does network get subnet part of IP addr?
A: gets allocated portion of its provider ISP’s address space(获取其提供程序ISP的地址空间的分配部分。)
Q: How do you migrate from IPV4 to IPV6?
A: 1.双栈(dual-stack),2.建隧道(tunnel)
Link Layer and LAN
首先,能看到现在,我对你的生命力感到由衷的钦佩。
但是革命仍未结束,同志仍须努力
About Service
其设计的初衷就是顺利为网络层提供数据服务,不考虑可靠性,可靠性的部分由传输层的TCP协议实现
为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层:
- 逻辑链路控制
LLC (Logical Link Control)
子层 - 媒体接入控制
MAC (Medium Access Control)
子层。
数据链路层使用的信道主要有以下两种类型:
- 点对点信道
- 广播信道(多用于LAN)
点对点信道的数据链路层的协议数据单元为帧(frame
)
点对点信道的数据链路层在进行通信时的主要步骤:
(1)结点A的数据链路层把网络层交下来的IP数据报添加首部和尾部封装成帧。
(2)结点A把封装好的帧发送给结点B的数据链路层。
(3)若结点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报上交给上面的网络层;否则丢弃这个帧。
<center><font color="gray">网络适配器之间的通信</font></center>
帧同步虽然可以区分每个数据帧的起始和结束,但是还没有解决数据正确传输的两方面问题:一、如果有帧出现了错误?二、如果有帧丢失了呢?这都是数据链路层确保向网络层提供可靠数据传输服务时需要解决的问题,也就是数据链路层的差错控制功能。
Error-Detection and -Correction Techiniques(错误检测与纠正)
错误检测
在数据链路层检测数据传输错误的方法一般是通过对差错编码进行校验来实现,常见的有奇偶校验码
和循环冗余校验(CRC)
Parity Checks
没啥好说的,最后一位设置校验位即可,我相信你懂
Cyclic Redundancy Checks
我们主要说说这个,循环冗余校验是一种根据传输或保存的数据而产生固定位数校验码的方法,主要用来检测或校验数据传输或者保存后可能出现的错误。生成的数字在传输或者储存之前计算出来并且附加到数据后面,然后接收端进行检验确定数据是否发生变化。(好像是考点,你最好看看)
CRC码可能看起来是这个样子
我们来举一个CRC计算的例子方便入门
【说明】“模2除法”与“算术除法”类似,但它既不向上位借位,也不比较除数和被除数的相同位数值的大小,只要以相同位数进行相除即可。
缓一口气,我们再看下一个对链路层很重要的问题:如何协调多个发送和接收节点对一个共享广播信道的访问?这就是多路访问问题了。
Multiple access protocols
多路访问协议大致分为3种:信道划分协议(channel partitioning
)、随机接入协议(random access
)和轮流协议(taking turns
)。
信道划分
TDMA: time division multiple access (时分多路复用)
TDM将时间划分为时间帧,并进一步划分每个时间帧为N个时隙。TDM消除了碰撞,而且非常公平(R/Nbps的速率)。但是它有两个缺陷:节点被限制于R/Nbps的平均速率。节点必须等待它在传输序列中的轮次。
FDMA: frequency division multiple access (频分多路复用)
FDM将Rbps信道划分为不同的频段(每个频段具有R/N带宽),并把每个频率分配给N个节点中的一个。不过它跟TDM的优缺点一样。
CDMA: code division multiple access (码分多路复用)
我们后续在无线网中说到
随机接入
在随机接入协议中,一个传输节点总是以信道的全部速率(即Rbps)进行发送。当有碰撞时,涉及碰撞的每个节点反复地重发它的帧,直到该帧无碰撞地通过为止。但是当一个节点经受一次碰撞时,它不必立刻重发该帧。相反,它在重发该帧之前等待一个随机时延。这里介绍最常用随机接入协议,即ALOHA协议
和载波侦听多路访问协议(CSMA)
。
ALOHA
ALOHA又分为 Pure ALOHA
和 Slotted ALOHA
- 纯ALOHA:简单,当传输点有数据需要传送的时候,它会向立即向通讯频道传送。可能会引发不少冲突(ef=0.18,糟糕的传输率)
- 时隙ALOHA:这是对纯ALOHA协议的一个改进。改进之处在于,它把频道在时间上分段,每个传输点只能在一个分段的开始处进行传送。每次传送的数据必须少于或者等于一个频道的一个时间分段。这样很大的减少了传输频道的冲突。效率是
1/e=0.37
CSMA (carrier sense multiple access)
关于CSMA,如果比喻成与人谈话,有礼貌的人谈话有两个重要规则:
第一:说话之前先听。
第二:如果与他人同时开始说话,停止说话。
说话前先听,也就是载波侦听(carrier sensing),即一个节点在传输前先听信道。如果来自另一个节点的帧正向信道上发送,节点则等待一段随机时间后再侦听信道。如果侦听到时空闲的,则开始传输,否则再等待另一段随机时间,继续重复整个过程。
如果同时说话,那么都停止说话,在网络领域中被称为碰撞检测(collision detection),即一个传输节点在传输时一直在侦听信道,如果它检测到另一节点正在传输干扰帧,它就停止传输,用某个协议来确定应该在什么时候再尝试下一次传输。
这两个规则包含在载波侦听多路访问(CSMA)和具有碰撞检测的CSMA(CSMA with Collision Detection, CSMA/CD)协议族中。
Expand:
CSMA/CD efficiency=1/(1+5tprop/ttrans)
轮流协议
这里讨论比较重要的两种协议。第一种是轮询协议(polling protocol
),要求这些节点之一要被指定为主节点。主节点以循环的方式轮询每个节点。轮询协议消除了困扰随机接入协议的碰撞和空时隙,使得轮询取得高得多的效率。但也有缺点,第一个缺点是该协议引入轮询时延
,即通知一个节点它可以传输所需的时间。第二个缺点就是主节点有故障,整个信道将变得不可操作。第二种轮流协议是令牌传递协议(token-passing protocol
),在这个协议中没有主节点。一个小的称为令牌的特殊目的帧在节点之间以某种固定的次序进行交换。
polling
token-passing
link-Layer Addressing
MAC address
MAC(Medium/Media Access Control)地址,用来表示互联网上每一个站点的标识符,采用十六进制数表示(hexadecimal (base 16) notation
),共六个字节(48位)。
ARP协议(Address Resolution Protocol)
直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供该节点的MAC地址。
Tips:
ARP协议只使用于局域网中,点对点的连接是不需要ARP协议的,ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
ARP协议的本质是完成网络地址到物理地址的映射。从概念上将就是找到一个映射方法f,使得“物理地址 = f(网络地址)“。物理地址有两种基本类型:以太网类型和令牌环网类型。网络地址特指IP地址,对映射方法的要求就是高效。
Ethernet
我们可以将 802.3 局域网简称为“以太网”
Tips:
这里不做过多讲解,有兴趣可以翻阅查看以太网的帧结构,只需知道它所用的MAC协议是CSMA/CD就好
Link-Layer Switches
老师说不是重点,所以祝愿各位自学成才
Test
Q: Where is the link layer implemented?
A: in a network adapter.(network interface card,NIC).
Q: LAN according to the topology which can be divided into several kinds?
A: 总线结构、环型结构、星型结构、网状结构、树型结构以及混合型结构。
Q: Why does the ARP query need to be sent in the broadcast frame?Why does the ARP response have to be sent in a frame containing a specific destination MAC address?
A:ARP查询的目的是为了获取目标主机的物理地址,在网络通讯中,无明确地址的通讯只能通过广播方式来进行。因为ARP响应对象在收到ARP广播后向ARP广播机器反馈自己的MAC信息就需要向ARP广播方发送这个报文.而ARP广播方是已知道MAC地址的,所以反馈信息的时候会带上具体的MAC地址,如果该报文不带具体MAC地址的话,将会引起连绵不绝的网络风暴。
没想到吧,你已经不知不觉看完了本书的许多重点,虽然你应该没懂多少,但效果还是有的对吧。少侠留步,还有一些无线网和移动网的知识我们没说,咱们下节继续。
Wireless and Mobile Network
喜大普奔,我们迎来了最后一章,是不是内心还有点小窃喜,废话说了很多,我们进入正题。
无线网络(wireless network)是采用无线通信技术实现的网络。无线网络既包括允许用户建立远距离无线连接的全球语音和数据网络,也包括为近距离无线连接进行优化的红外线技术及射频技术,与有线网络的用途十分类似,最大的不同在于传输媒介的不同,利用无线电技术取代网线,可以和有线网络互为备份。
无线网络的三个主要构成:
- Wireless hosts
- Wireless links
- Base station
特点:
1、有线:需要设备之间使用网线连接,这样限制了设备之间的距离。
2、无线:通过无线协议实现数据传输或者网络连接,一般室内50m范围内可以全方位传输数据。不过无线容易被电磁波干扰,而且墙壁对信号削弱也比较大。
一般室内使用,建议直接无线。
无线网中极其重要的一个协议是CDMA,我们具体看看应用场景
WiFi: 802.11 Wireless LANs
IEEE 802.11是现今无线局域网通用的标准,两个设备可以自行构建临时网络,也可以在基站(Base Station, BS
)或者接入点(Access Point,AP
)的协调下通信。为了在不同的通讯环境下取得良好的通讯质量,采用CSMA/CA(Carrier Sense Multiple Access/Collision Avoidance)
的硬件沟通方式
Expands:
802.11和Wi-Fi技术并不是同一个东西。Wi-Fi标准是802.11标准的一个子集,并且是Wi-Fi联盟负责管理
WLAN有以下三种网络拓扑结构:
1) 独立基本服务集(Independent BSS, IBSS)网络(也叫ad-hoc网络)
2) 基本服务集(Basic Service Set, BSS)网络
3) 扩展服务集(Extent Service Set, ESS)网络
AD-Hoc网络
BSS网络
对于个人PC来说,使用最多的所谓"无线Wi-Fi"指的就是BSS网络模式,我们通过AP(Access Point)
接入点来接入网络
ESS网络
其中,ESS中的DS(分布式系统)是一个抽象系统,用来连接不同BSS的通信信道(通过路由服务),这样就可以消除BSS中STA与STA之间直接传输距离受到物理设备的限制。
Tips:
记住每一个AP都有一个SSID(Service Set Identifier),SSID技术可以将一个无线局域网分为几个需要不同身份验证的子网络,每一个子网络都需要独立的身份验证,只有通过身份验证的用户才可以进入相应的子网络,防止未被授权的用户进入本网络
Beyond 802.11:Bluetooth and WiMAX
蓝牙:802.15协议,WiMAX:802.16协议
Celluar Internet Access
蜂窝网络或移动网络(Cellular network)是一种移动通信硬件架构,把移动电话的服务区分为一个个正六边形的小子区,每个小区设一个基站,形成了形状酷似“蜂窝”的结构,因而把这种移动通信方式称为蜂窝移动通信方式。
蜂窝网络又可分为模拟蜂窝网络和数字蜂窝网络,主要区别于传输信息的方式。
蜂窝网络组成主要有以下三部分:移动站,基站子系统,网络子系统。移动站就是网络终端设备,比如手机或者一些蜂窝工控设备。基站子系统包括移动基站(大铁塔)、无线收发设备、专用网络(一般是光纤)、无线的数字设备等等的。基站子系统可以看作是无线网络与有线网络之间的转换器。
便于理解,我们以GSM网络为研究对象(找了半天,终于有张不错的图)
我们来分析下构成
GSM数字移动通信系统主要由移动交换系统NSS
,基站子系统BSS
,维护操作子系统OMS
和移动台MS
构成,下面具体描述各部分的功能。
我们先从BSS看,BSS是NSS和MS之间的桥梁,主要完成无线通信管理和无线收发功能。BSS主要包括基站控制器BSC和基站收发信台BTS两个部分。
- BSC(Base Station Controller):基站控制器,处理所有的与无线信号有关的工作:小区的切换、无线资源管理等。位于MSC与BTS之间,具有对一个或者多个BTS进行控制和管理的功能,主要完成无线信道的分配、BTS和MS发射功率的控制以及越区信道切换等功能。BSC也是一个小型的交换机,它把局部网络汇集后通过A接口与MSC相连。
- BTS(Base Transceiver Controller):基站收发信机,负责无线信号的收发。基站子系统的无线收发设备,由BSC控制,主要负责无线传输功能,完成无线与有线的转换、无线分集、无线信道加密、跳频等功能。BTS通过Abis接口与BSC相连,通过空中接口Um与MS相连。此外BSS系统还包括编码变换和速率适配单元TRAU。TRAU通常位于BSC与MSC之间,主要完成16kbps的RPE-LTP编码和64kbps的A律PCM编码之间的码型变换。
我们可以从图中看到,一个cell的构成由Base station
,Mobile user
,和air-interface
三个部分参与
再转而去看NSS中的MSC,MSC(Mobile Service Switching Center)
:移动业务交换中心,GSM系统的核心,完成基本交换的动作和通讯连接,是一个重要接口
其他部分不作详细描述
之前可能遗漏的知识点
链路层提供的通信方式
串行通讯的基本概念:与外界的信息交换称为通讯.基本的通讯方式有并行通讯和串行通讯两种.
一条信息的各位数据被同时传送的通讯方式称为并行通讯.并行通讯的特点是:各数据位同时传送,传送速度快、效率高,但有多少数据位就需多少根数据线,因此传送成本高,且只适用于近距离(相距数米)的通讯.
一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯.串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但送速度慢.串行通讯的距离可以从几米到几千米.
根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种
。信息只能单向传送为单工;信息能双向传送但不能同时双向传送称为半双工;信息能够同时双向传送则称为全双工
IP子网划分
我们之前提到过ip地址划分为5类,在日常网络环境中,基本是都在使用B,C两大类地址,而ADE这3类地址都不大可
能被使用到。
子网掩码的简单叙述:子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
接下来我们可以看一下子网划分的例子:
假如给你一个C类的IP地址段:
192.168.0.1-192.168.0.254,其中192.168.0 这个属于网络号码,而1~254表示这个网段中最大能容纳254台电脑主机。我们现在要做的就是把这254台主机再次划分一下,将它们区分开来。
192.168.0.1-192.168.0.254默认使用的子网掩码为255.255.255.0,其中的0在2进制中表示,8个0.因此有8个位置没有被网络号码给占用,2的8次方就是表示有256个地址,去掉一个头(网络地址)和一个尾(主机地址),表示有254个电脑主机地址,因此我们想要对这254来划分的话,就是占用最后8个0中的某几位。
假如占用第一个0.那么2进制表示的子网掩码为
11111111.11111111.11111111.10000000。转换为10进制就为255.255.255.128,那么这时电脑主机应该为多少?其实很简单,就是2的7次方了(不再是原来的2的8次方了),2的7次方=128,因此假如子网掩码为255.255.255.128的话,这个C类地址可以被区分为2个网络,每个网络中最多
有128台主机。 192.168.0.1-192.168.0.127为一个,192.168.0.128-192.168.0.255为第二个。
再举个例子,假如还是C类地址,其IP范围为192.168.0.1-192.168.0.254,假如子网掩码255.255.255.192(也就是最后8为主机位,
被占用了2位,2进制表示为11111111.11111111.11111111.11000000),
那么这个网段的电脑主机数目就是2的6次方=64台,总共有2的2次方=4个网段。第一个网段为192.168.0.1-192.168.0.63,第二个网段为192.168.0.64-192.168.0.127,第三个网段为192.168.0.127-192.168.0.191,第四个
网段为192.168.0.192-192.168.0.254。
如果你想结合实际情境去划分,请戳Me
Summary
到此,我们整个计算机网络就学习完毕了,不知道你从中看懂了多少,反正我是不抱太大期望。笔者虽然从头写了一遍,零零散散加起来历时两天,这个过程比较辛苦但也比较值得。能看到许多自己智商急需充值的地方我还是很欣慰的。至于各位的领悟程度,我只能从内心祝福我的朋友们能考试顺利拿到高分(ji ge jiu hao)
另外对于其他的网友而言,你可以把它当作一篇由浅入深的笔记,里面网罗了许多知识,需要静静品读,勤加思考才会有充足的收获,切勿急躁,相信如果你全部理解,你一定是天纵之才!
-End
by:小栗子
参考作者博文:
计算机网络层 / 传输层之多路复用与多路分解 / 可靠数据传输原理(上) / 可靠数据传输原理(下) /
计算机网络传输层 / 网络层学习笔记 / LS和DV算法的比较 / BGP讲解 / 多路访问协议 /
计算机网络数据链路层 / ARP协议详解 / 局域网&以太网 / 802.11协议帧 / GSM网络结构 / 串口扫盲