计算机网络之Internet接入技术

什么是接入网

不管是以太网还是无线局域网,都是大小规模比较小的网络,对于其中的终端,只能在这个小规模的网络范围内进行通信,如果我们需要和远在几千公里之外的其他终端通信,我们还需要将我们的终端接入到我们的骨干网中,我们可以认为骨干网就是一个总站,只要我们和这个总站建立了联系,那么我们也可以和连接在总站上的其他终端进行通信,而要做到这些我们必须先接入我们的骨干网

Internet接入控制技术

接入网是直接面向我们每一个互联网用户的,而互联网是一个商业的网络,对于我们每个用户来说,接入互联网是需要付费的,因此我们的接入的过程应该是在ISP(Internet Service Provider)的控制下进行的,而整个过程就是由接入控制技术来实现的。首先我们向ISP申请账号和密码,ISP通过对账号和密码的验证来给我们分配相应的网络资源,因此一个终端要接入到Internet中,有两个先决条件:

  • 终端物理连接到网络
  • 是一个注册用户

接入过程是通过一个接入控制设备来完成的

终端接入Internet的过程

  • 建立传输路径
  • 完成身份的鉴别
  • 动态分配终端的网络信息

鉴别协议

口令鉴别协议(Password Authentication Protocol,PAP)

终端向接入控制设备发送用户名和口令,接入控制设备来判断终端是否为注册用户,如果成功,接入控制设备向终端发送鉴别成功帧,如果失败,向终端发送鉴别失败帧,且终止终端接入Internet过程

挑战握手鉴别协议(Challenge Handshake Authentication Protocol,CHAP)

PAP通过发送明文的用户名和口令,这种方式容易被截获,然后被其他人冒充,而产生的服务费都算在注册用户身上了。CHAP开始鉴别身份以后,接入控制设备向终端发送一个随机数C,终端将随机数C与口令P串接为一个数:C||P,再用一个单项的函数计算出一个值:F(C||P),然后再将用户名和这个值一起发送给接入控制设备,接入控制设备通过用户名找到该用户实际的口令P’,用同样的单向函数计算出F(C||P’),如果这个值和终端发送过来的值一致,接入控制设备向终端发送鉴别成功帧,如果两个值不相等,则发送鉴别失败帧,且终止终端接入过程

IP控制协议IPCP(Internet Protocol Control Protocol)

IPCP的协议过程为:

  • 终端向接入控制设备发送请求分配IP地址帧
  • 接入控制设备如果允许为终端分配网络信息,从IP地址池中选择一个IP地址,将该IP地址和其他网络信息一起发送给终端
  • 路由表创建一项通往终端的路由项

点对点协议(Point to Point Protocol,PPP)

接入的过程可能随时在某一个点终止,因此它和普通终端之间的通信还不一样,所以我们需要用一种协议来规范这个过程,它就是点对点协议PPP,这个协议是基于点对点信道的链路层协议,它控制终端完成接入的整个过程,是终端和网络之间运行的协议。为什么要用PPP作为终端接入网络的协议呢,因为最早的网络接入方式为拨号接入,这种方式的接入特点有:

  • 终端与接入控制设备之间的传输路径是点对点语音信道
  • 相互交换的信息封装成适合点对点语音信道传输的帧格式

而PPP是基于点对点信道的链路层协议,PPP帧也适合点对点语音信道传输

PPP帧格式

PPP帧由固定的8字节和可变长度的信息组成,首位为固定两字节的7E,因为是点对点的通信,地址也是固定的一个字节FF(11111111),一个字节固定的控制信息03,后面有2个字节的CRC检验码,协议是标识该PPP帧的类型,比如在接入时,我们采用的如果是CHAP方式,则协议字段为C223,那么通过CHAP协议产生的数据(PDU:协议数据单元)就放在信息字段中,然后形成一个PPP帧

接入过程

  1. 建立传输路径
  2. 鉴别用户身份
    • PAP
    • CHAP
  3. 动态分配IP地址:IPCP
  4. 动态创建终端对应的路由项

通过以太网接入Internet

如果用以太网接入到Internet首先需要解决终端和接入控制设备之间的通信的问题,就是要让终端和接入控制设备之间进行通信,在以太网中我们的数据是以MAC帧格式进行通信的,因此需要实现终端和接入控制设备之间的MAC帧传输,首先建立传输路径:

  • 建立终端和接入控制设备的交换路径
  • 终端和接入控制设备必须知道相互之间的MAC地址

在我们上面的介绍中,我们知道要完成整个过程,接入控制设备还需要对终端进行身份的鉴别,然后分配相应的网络资源,而整个接入过程是通过PPP协议完成的,而在以太网中怎么运行基于以太网的PPP协议呢,那就需要用到基于以太网的PPPoE

PPPoE(PPP over Ethernet)

PPPoE的主要功能有:

  • 把需要传输的PPP帧封装成MAC帧
  • 实现终端A与接入控制设备之间MAC帧传输过程
  • 终端和接入控制设备可以通过PPP完成接入控制过程

实现过程:

互相发现

互相发现过程是终端和接入控制设备相互获取MAC地址的过程,首先,终端发送一个发现启动报文,发现启动报文以终端MAC地址为源地址,以广播地址为目的地址,接入控制设备接收到报文以后,如果它的端口支持PPPoE,则发送一条发现提供报文,以终端MAC地址为目的地址,接入控制设备MAC地址为源地址,终端可能会接收到多个接入控制设备的发现提供报文,它会选择其中一个来建立会话,然后再给接入控制设备发送一个发现请求报文,发现请求报文以接入控制设备MAC地址为目的地址,以终端自己的MAC地址为源地址,接入控制设备接收到以后,会为这样一个会话分配一个标识符PPP_ID,然后发送给终端一个会话确认报文,源地址是接入控制设备的MAC地址,目的地址是终端的MAC地址,这样,终端就和接入控制设备之间建立了一个会话,这个会话以终端MAC地址、接入控制设备MAC地址和PPP_ID为唯一标识

为什么需要用终端MAC地址、接入控制设备MAC地址和PPP_ID为会话的唯一标识呢,因为如果在单一终端的以太网中,链路是被这个终端独享的,因此不需要PPP_ID,但是实际的运用中,多数是以下的以太网结构:

在一个以太网中有多个终端,而且他们都通过集中计入设备连接到接入控制设备上,因此在着个链路中,对于某一个终端,有两段物理链路,比如A,先从A到集中接入设备,再从集中接入设备到接入控制设备上,而从集中接入设备到接入控制设备上时,以太网MAC帧的源地址为集中接入设备的MAC地址,目的地址为接入控制设备的MAC地址,对于终端B,在这段链路上也是一样,因此我们不能仅用源地址和目标地址来标识某个会话,还需要为每个会话加上一个PPP_ID。PPP会话就是在链路上建立的一个虚电路,PPP_ID就是标识这个虚电路的唯一标识

PPP帧会话格式

在以太网中需要将PPP帧封装成MAC帧的格式才能被传输,我们的MAC帧中,数据只包含了PPP帧的协议和信息

以太网接入Internet实例

  1. 用户到ISP注册,得到用户名和口令,ISP登记
  2. 终端A接入网络,通过连接程序和接入控制设备建立连接
  3. 建立PPP会话完成接入过程
  4. 接入控制设备给终端分配一个IP
  5. 在路由表中建立路由项

ASDL接入Internet

网络结构

ASDL是拨号上网的进阶,下图为一个拨号上完的网络拓扑图:

由于拨号上网的以上缺陷,因此后面产生了一种的新的接入技术ASDL(Asymmetric Digital Subscriber Line),非对称数字用户线,相对于拨号上网,它有如下的改进:

  1. 一是提高数据传输速率
  2. 二是无需通过拨号连接来建立终端和接入控制设备之间点对点语音信道
  3. 上网和打电话可以同时进行

那么ASDL是如何做到这些改进的呢,下面是一张ASDL的网络拓扑图:

终端和电话机还是共享了物理链路,但是在网络中增加了一些设备,如语言分离器,共享的物理链路是如何完成上网和通话一起进行的呢

用户线的频分复用

于是在用户线上就建立三条信道,其中ADSL Moderm只输出30kHz~1.2MHz频段,而语音分离器只输出0Hz~4000Hz频段

数据传输路径

其中我们可以看出ADSL Modem和DSLAM的物理层都需要具备以下的功能:

  • 连接以太网端口实现二进制位流和基带信号之间的相互转换(MAC帧)
  • 连接用户线端口实现二进制位流和指定频段内模拟信号之间的相互转换(ATM信元)
  • 两种帧格式互相转换功能

ADSL与以太网接入主要区别在于终端与接入控制设备之间的传输路径

家庭局域网接入Internet

ADSL家庭局域网接入方式

以太网家庭局域网接入方式

这两种方式的区别显而易见,而相同的是他们都用到了无线路由器

无线路由器

无线路由器接入Internet的三中方式:

  1. 静态IP地址接入方式
  2. DHCP接入方式
  3. PPPoE接入方式

静态IP地址接入方式

PPPoE接入方式

DHCP接入方式

后续介绍

以太网终端接入方式和以太网家庭局域网接入方式下,终端和无线路由器均可采用静态IP地址和PPPoE方式。ADSL终端接入方式和ADSL家庭局域网接入方式下,终端和无线路由器一般只能采用PPPoE方式

私有IP和NAT

全球IP地址是一种私有资源,对于每一个家庭局域网来说,一般不会为每个终端都分配一个全球IP,ISP只会给家庭的每一个无线路由器WAN端口分配一个全球IP,家庭局域网中的终端IP地址称为私有IP地址,私有IP地址由互联网工程任务组(Internet Engineering Task Force,IETF)留作内部网络使用的一些特殊IP地址,推荐三组:

  • 10.0.0.0/8
  • 172.16.0.0/12
  • 192.168.0.0/16

NAT(Network Address Translation,网络地址转换)就是完成全球IP地址与私有IP地址之间的转换,

坚持原创分享,您的支持将鼓励我不断前行!