实行四、零比特插入《计算机网络》

打印 上一主题 下一主题

主题 565|帖子 565|积分 1695

但凡这句话有一点用的话也不至于一点用都没有。
目次
一、实行目的
二、实行内容
三、实行小结


一、实行目的



  • 把握零比特插入原理及方法
  • 使用恣意编程语言实现零比特插入方法。

二、实行内容



  • 把握零比特插入原理及方法
点对点协议 PPP(Point-to-Point Protocol)是现在使用得最广泛的数据链路层协议。现
在大部门用户是使用电话线拨号接入因特网的。而从用户计算机到 ISP 的链路所使用的数据
链路层协议就是 PPP 协议。PPP 协议必须包管数据传输的透明性。这就是说,不能限定网络
层交下来的分组中不许出现某种比特组合。只要不出现传输差错,所有的数据都必须原封不
动地传送到相邻结点。如果数据中碰巧出现了和帧定界符一样的比特组适时,就要接纳有效
的步调来解决这个问题。
PPP 协议中,用在SONET/SOH链路时,是使用同步传输,而不是异步传输,这
种环境下,PPP 协议采用 0 比特填充的方法实现透明传输.

具体方法:
在发送端扫描整个信息字段,只要发现 5 个一连 1,则立即填入 1 个 0,因此在经过这
种 0 比特填充后,可包管信息字段中不会出现 6 个一连 1.在接收端收到 1 个帧时,先找到
标志字段F,以确定一个帧边界,接着再对后面的比特流扫描,每当发现 5 个一连 1 时,就
把这 5 个一连 1 后的一个 0 删除,以还原后来的信息比特流.这样就包管了透明传输,在所
传输的数据比特流中可以传送恣意组合的比特流,而不会引起对帧边界的判断错误。
   ①信息字段中出现了和  0101111110001010     标志字段   F   完全一样 会被误以为是标志字段 F 的 8   比特组合     ②发送端在   5   个一连的 010011111010001010 1 之后填入   0   比特再发送端填入 0   比特     发送出去     ③在接收端把   5   个一连 010011111010001010 的 1   之后的   0   比特删除接收端删除填入的 0   比特  
在 windows 环境下使用恣意编程语言编写零比特插入步调;
  1. package com.vivi;
  2. import java.util.Scanner;
  3. public class Demo {
  4.     public static void main(String[] args) {
  5.         //原来的二进制编码
  6.         System.out.println("Please input binary code:");
  7.         Scanner scan = new Scanner(System.in);
  8.         String input = scan.next();
  9.         System.out.println("original:" + input);
  10.         //输出的编码
  11.         String outCode = input.replace("11111","111110" );
  12.         outCode = "01111110" + outCode + "01111110";
  13.         System.out.println("output:" + outCode);
  14.         //收到的编码
  15.         String receiveNum = outCode;
  16.         int count = 0;
  17.         int start = receiveNum.indexOf("01111110") + 8;
  18.         receiveNum = receiveNum.substring(8);
  19.         int end = receiveNum.indexOf("01111110");
  20.         receiveNum = receiveNum.substring(0, receiveNum.length()-8);
  21.         System.out.println("receive:" + receiveNum);
  22.         //处理后的编码
  23.         receiveNum = receiveNum.replace("1111101","111111" );
  24.         System.out.println("handle:" + receiveNum);
  25.     }
  26. }
复制代码

三、实行小结

操纵:
1.在发送端,扫描整个信息字段,只要一连5个1,就立即填入1个0。
2.在接收端收到一个帧时,先找到标志字段确定边界,再用硬件对比特流举行扫描。发现一连5个1时,就把后面的0删除
包管了透明传输:在传送的比特流中可以传送恣意比特组合,而不会引起对帧边界的判断错误。
零比特填充法很容易由硬件来实现,性能优于字符填充法。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

三尺非寒

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表