2013-08-19 22:35:57


  • 2.6 PPP:点对点协议

PPP点对点协议修改了SLIP协议中的所有缺陷:

1. 在串联链路上封装IP数据报的方法。PPP即支持数据为8位&无奇偶检验的异步模式(大多数计算机上普遍存在的串行接口)、还支持面向比特的同步链接
2. 建立、配置及测试数据链路的链路控制协议(LCP:Link Contrl Protocol)。它允许通讯双方进行协商,以确定不同的选项  
3. 针对不同网络层协议的网络控制协议(NCP:Network Control Protocol)体系。

关于SLIP和PPP协议的区别和联系,请看http://network.51cto.com/art/201009/223824.htm

抄一些下来~

1、PPP可以进行IP地址的协商,而SLIP需要静态指定;
2、PPP的LCP控制过程可以进行很多选项的协商,相应的增加了可靠性和管理性,但也带来了复杂性的问题;
3、PPP可以支持多个网络层协议,而SLIP只支持IP;
4、PPP的认证过程可以支持较为强大的CHAP(比如MD5)方式,而SLIP只能适用明文密码;
5、PPP可以进行练路完整性验证;
6、二者都支持一些扩充技术比如压缩TCP;

这些优点的代价是每一帧的首部增加三个字节,当建立链路时要发送几帧协商数据,以及更为复杂的实现。

关于格式的说明:

首部 每一帧都以标志字符0x7e开始和结束。紧接着是一个地址字节,值始终是0xff。然后是值为0x03的控制字节
协议字段 类似与以太网中类型字段的功能。

0x0021 表示信息字段是一个IP数据报
0xc021 表示信息字段是链路控制数据
0x8021 表示信息字段是网络控制数据
CRC字段 或称FCS,帧检验序列,是一个循环冗余检验码,以检测数据帧中的错误
字符转义 由于标志字符的值为0x7e,因此当它出现在信息字段中时,需要对其进行转义。
同步链路:通过比特填充(bit stuffing)的硬件技术来完成
异步链路:特殊字符0x7d用作转义字符,当它出现在数据帧时,紧接着的字符的第6位要取补码,具体过程如下

字符0c7e 连续传送两个字符0x7d和0x5e
字符0x7d 连续传送两个字符0x7d和0x5d
字符值小于0x20(一个ASCII控制字符) 例如遇到0x01,连续传送两个字符0x7d和0x21(这时,第6位取补码后变为1)
  • 2.7 环回接口

  环回接口(Lookback Interface),义允许运行在同一台主机上的客户程序和服务器程序通过TCP/IP进行通信。A类网络好号127就是为环回接口预留的。根据惯例,大多数系统把IP地址127.0.0.1分配给这个接口,并命名为localhost。一个传给环回接口的数据报不能在任何网络上出现。

  我们想象,一旦传输层检测到目的端地址是环回地址时,应该可以省略部分传输层和所有网络层的逻辑操作。但是大多数的产品还是照样完成传输层和网络层的所有过程,只是当IP数据报离开网络层时把它返回给自己。

图中关键点:

1. 传给环回地址(一般是127.0.0.1)的任何数据均视为IP输入
2. 传给广播地址或多播地址的数据报复制一份传给环回接口,然后送到以太网上。这是因为广播传送和多播传送的定义包含主机本身
3. 任何传送给主机IP地址的数据均送到环回接口

『TCP/IP详解——卷一:协议』读书笔记——05的更多相关文章

  1. 『TCP/IP详解——卷一:协议』读书笔记——10

    2013-08-22 22:57:17 3.8 ifconfig命令 这个命令在Linux系统下可以通过下面的指令阅读说明文档: ifconfig 由于书中作者用的系统比较早的某Unix系统,所以我的 ...

  2. 『TCP/IP详解——卷一:协议』读书笔记——01

    从今日起开始认真研读TCP/IP详解这本经典制作,一是巩固我薄弱的计算机网络知识,二来提高我的假期的时间利用率.将心得与思考记录下来,防止白看-哦耶 2013-08-14 18:47:06 第一章 概 ...

  3. 『TCP/IP详解——卷一:协议』读书笔记——18

    2013-08-27 15:44:52 第7章 Ping程序 7.1 引言 “ping”这个名字来源于声纳定为操作.Ping程序由Mike Muuss编写,目的是为了测试另一台主机是否可达.该程序发送 ...

  4. 『TCP/IP详解——卷一:协议』读书笔记——14

    2013-08-25 11:32:06 第5章 RARP:逆地址解析协议 5.1 引言 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址.但是无盘机,如X终端或无盘工作站,则需要采用其 ...

  5. 『TCP/IP详解——卷一:协议』读书笔记——13

    2013-08-24 16:03:39 4.6 ARP代理 ARP代理(Proxy ARP):如果ARP请求是从一个网络的主机发往另一个网络上的主机,那么连接这两个网络的路由器就可以回答该请求.这样可 ...

  6. 『TCP/IP详解——卷一:协议』读书笔记——11

    2013-08-23 20:00:18 第4章 ARP:地址解析协议 4.1 引言 ARP(Address Resolution Protocol,地址解析协议)是获取物理地址的一个TCP/IP协议. ...

  7. 『TCP/IP详解——卷一:协议』读书笔记——07

    2013-08-20 17:51:49 第三章 IP:网际协议 3.1 引言 IP是TCP/IP协议族中最为核心的协议.所有的TCP.UDP.ICMP和IGMP数据都以IP数据报格式传输.再来看一下图 ...

  8. 『TCP/IP详解——卷一:协议』读书笔记——06

    2013-08-20 14:41:01 2.8 最大传输单元MTU MTU,最大传输单元:以太网和802.3对数据帧的长度都有一个限制,其最大值分别是1500和1492字节.这个不同网络对应的传输上限 ...

  9. 『TCP/IP详解——卷一:协议』读书笔记——04

    2013-08-18 16:31:17 第2章 链路层 2.1 引言 链路层主要有三个目的: 为IP模块发送和接受IP数据报 为ARP模块发送ARP请求和接受ARP应答 为RARP发送RARP请求和接 ...

随机推荐

  1. EL简介

    一.EL简介 1.语法结构    ${expression}2.[]与.运算符    EL 提供.和[]两种运算符来存取数据.    当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符 ...

  2. python 中 五种字典(dict)的遍历方法,实验法比较性能。

    1 .背景: 想知道5种遍历方法,并且知道从性能角度考虑,使用哪种. 2.结论: 使用这种方式: for key,val in AutoDict.iteritems(): temp = "% ...

  3. LR11-更改licence

    准备工作: 超级licence 6.5w:AEACFSJI-YJKJKJJKEJIJD-BCLBR AEACFSJI-YJKJKJJKEJIJD-BCLBR 操作步骤: 1.网上下载lr删除注册表工具 ...

  4. Jmeter组件5. 逻辑控制

    逻辑控制组件也有不少,但是用到的情况也不多,只打算举个While controller结合Regular Expression Extractor的例子 Condition,跳出循环的条件 如果放空, ...

  5. oracle中的case when then else end 用法

    Case when 的用法,简单Case函数 简单CASE表达式,使用表达式确定返回值. 语法: CASE search_expression WHEN expression1 THEN result ...

  6. 记一个PowerShell的方法调用 --ResolveWindowsPrincipal

    没时间系统的学习PowerShell, 只能现学现用. 这段函数调用花了我半个多小时才搞定. 呵呵. 您别笑我, 呵呵. 在这里个例子里, 包括了PowerShell里如下的一些要点: 静态函数的调用 ...

  7. $.when().then()

    当两个Ajax请求是成功的则执行函数myFunc,如果任一个有错误则执行myFailure. $.when($.ajax("/page1.php"), $.ajax("/ ...

  8. java 常见关键字的使用

    Super 关键字:指向父类对象的引用空间. 作用:1.当子类和父类存在同名的成员变量时,可以通过super来调用父类的成员变量. 2.super可以用来调用父类的构造方法. Instanceof 关 ...

  9. awk用法

    目前虽然有很多工具可以代替awk,但是呢我还是认为awk还是非常重要,比如有时候load数据到hive,mysql发现数据有点问题,这样可以先对比文件和库中数据是否一致,这样awk就发挥用处了,还有从 ...

  10. ASP.NET上传大文件的问题

    原文:http://www.cnblogs.com/wolf-sun/p/3657241.html?utm_source=tuicool&utm_medium=referral 引言 之前使用 ...