参考视频:Netty核心技术及源码剖析 主从Reactor模式

1 主从reactor多线程模式架构

如上图所示,为主从reactor多线程模式图。

多线程reactor多线程模型的出现,是为了解决单reactor在高并发场景下的性能瓶颈。

一个reactor主线程(MainReactor),多个reactor子线程(SubReactor)。如果目前存在的reactor子线程都处于满运载的状态,则可以增加新的reactor子线程。

2 流程

(1)Reactor主线程MainReactor通过selsect监听连接事件。收到事件后,由Acceptor处理连接事件。
(2)当Accetor处理事件后,MainReactor将连接分配给SubReactor。
(3)SubReactor将连接加入到连接队列进行监听,并创建handler进行各种事件处理。
(4)当有新的事件发生时,Subreactor就会调用对应的handler处理。
(5)handler通过read读取数据,分发给后面的Work线程池处理。
(6)Worker线程池会分配独立的Worker线程进行处理(解码-计算-编码),并返回结果。
(7)handler收到相应的结果后,再通过send方法将结果返回给client。
(8)Reactor主线程可以对应多个Reactor子线程。即MainReactor可以关联多个SubReactor。

3 主从reactor模式的优缺点

3.1 优点

(1)父线程与子线程的数据交互简单职责明确。父线程只需要处理新的连接,子线程完成后续的业务处理。
(2)父线程与子线程的数据交互简单,reactor主线程只需要把新连接传给子线程,子线程无需返回数据。

3.2 缺点

编程复杂度高。

4 reactor模式的优点

(1)响应快。不必为单个同步时间所阻塞,虽然reactor本身依然是同步的。
(2)可以最大程度的避免复杂的多线程以及同步问题,并且避免了多线程/进程的切换开销。
(3)扩展性好。可以方便的通过增加reactor实例个数来充分利用CPU资源。
(4)复用性好。Reactor模型本身与具体事件处理逻辑无关,具有很高的复用性。

0
Posted in 计算机网络

1 git基本命令

mkdir project # 创建项目目录
cd project # 进入到项目目录
git init # 初始化 git 仓库。此命令会在当前目录新建一个 .git 目录,用于存储 git 仓库的相关信息
初始化提交
touch README
git add . # 将当前目录添加到 git 仓库中, 使用 git add -A 则是添加所有改动的文档
git commit -m “Initial commit”
git remote add origin git @github.com:lugir /repo.git # 设置仓库
修补提交(修补最近一次的提交而不创建新的提交)
git commit –amend -m “commit message.”
提交冲突时可以合并后再推送
git pull # 获取远程版本库提交与本地提交进行合并
git push # 提交
使用别人的仓库
git clone http: //path /to /git.git # clone 的内容会放在当前目录下的新目录
将代码从本地回传到仓库
git push -u origin master
使用 git status 查看文件状态
git status
查看提交日志
git log # 查看提交信息
git log –pretty=oneline # 以整洁的单行形式显示提交信息
Git 分支
git branch # 查看分支
git branch 6.x- 1.x # 添加分支 6.x-1.x
git branch checkout master # 切换到主分支
git branch -d 6.x- 1.x # 删除分支 6.x-1.x
git push origin :branchname # 删除远端分支
Git 标签
git tag # 查看分支
git tag 6.x- 1.0 # 添加标签 6.x-1.0
git show 6.x- 1.0 # 查看标签 6.x-1.0 的信息
git tag -a 6.x- 1.0 965e066 # 为之前提交的信息记录 965e066 加上标签
git push –tags # 提交时带上标签信息
git push origin : /refs /tags /tagname # 删除远端标签
从 git 仓库中导出项目
git archive –format tar –output /path /to /file.tar master # 将 master 以 tar 格式打包到指定文件

0
Posted in 计算机网络

1-01 计算机网络向用户可以提供那些服务?

连通性和共享

1-02 简述分组交换的要点。

(1)报文分组,加首部
(2)经路由器储存转发
(3)在目的地合并

1-03 试从多个方面比较电路交换、报文交换和分组交换的主要优缺点。

(1)电路交换:端对端通信质量因约定了通信资源获得可靠保障,对连续传送量数据效率高。
(2)报文交换:无须预约传输带宽,动态逐段利用传输带宽对突发式数据通信效率高,通信迅速。
(3)分组交换:具有报文交换之高效、迅速的要点,且各分组小,路由灵活,网络生存性能好。

1-04 为什么说因特网是自印刷术以来人类通信方面最大的变革?

融合其他通信网络,在信息化过程中起核心作用,提供最好的连通性和信息共享,第一次提供了各种媒体形式的实时交互能力。

1-05 因特网的发展大致分为哪几个阶段?请指出这几个阶段的主要特点。

从单个网络APPANET向互联网发展;TCP/IP协议的初步成型
建成三级结构的Internet;分为主干网、地区网和校园网;
形成多层次ISP结构的Internet;ISP首次出现。

1-06 简述因特网标准制定的几个阶段?

(1)因特网草案(Internet Draft) ——在这个阶段还不是 RFC 文档。
(2)建议标准(Proposed Standard) ——从这个阶段开始就成为 RFC 文档。
(3)草案标准(Draft Standard)
(4)因特网标准(Internet Standard)

1-07 小写和大写开头的英文名字 internet 和Internet在意思上有何重要区别?

(1) internet(互联网或互连网):通用名词,它泛指由多个计算机网络互连而成的网络。;协议无特指 (2)Internet(因特网):专用名词,特指采用 TCP/IP 协议的互联网络
区别:后者实际上是前者的双向应用

1-08 计算机网络都有哪些类别?各种类别的网络都有哪些特点?

按范围:
(1)广域网WAN:远程、高速、是Internet的核心网。
(2)城域网:城市范围,链接多个局域网。
(3)局域网:校园、企业、机关、社区。
(4)个域网PAN:个人电子设备
按用户:公用网:面向公共营运。专用网:面向特定机构。

1-09 计算机网络中的主干网和本地接入网的主要区别是什么?

主干网:提供远程覆盖\高速传输\和路由器最优化通信
本地接入网:主要支持用户的访问本地,实现散户接入,速率低。

1-12 因特网的两大组成部分(边缘部分与核心部分)的特点是什么?它们的工作方式各有什么特点?

边缘部分:由各主机构成,用户直接进行信息处理和信息共享;低速连入核心网。
核心部分:由各路由器连网,负责为边缘部分提供高速远程分组交换。

1-13 客户服务器方式与对等通信方式的主要区别是什么?有没有相同的地方?

前者严格区分服务和被服务者,后者无此区别。后者实际上是前者的双向应用。

1-14 计算机网络有哪些常用的性能指标?

速率,带宽,吞吐量,时延,时延带宽积,往返时间RTT,利用率

1-16 计算机通信网有哪些非性能特征?非性能特征与性能特征有什么区别?

非性能特征:宏观整体评价网络的外在表现。
性能指标:具体定量描述网络的技术性能。

1-20 网络体系结构为什么要采用分层次的结构?试举出一些与分层体系结构的思想相似的日常生活。

分层的好处:
①各层之间是独立的。某一层可以使用其下一层提供的服务而不需要知道服务是如何实现的。
②灵活性好。当某一层发生变化时,只要其接口关系不变,则这层以上或以下的各层均不受影响。
③结构上可分割开。各层可以采用最合适的技术来实现
④易于实现和维护。
⑤能促进标准化工作。
与分层体系结构的思想相似的日常生活有邮政系统,物流系统。

1-21 协议与服务有何区别?有何关系?

网络协议:为进行网络中的数据交换而建立的规则、标准或约定。由以下三个要素组成:
(1)语法:即数据与控制信息的结构或格式。
(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。
(3)同步:即事件实现顺序的详细说明。
协议是控制两个对等实体进行通信的规则的集合。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务,而要实现本层协议,还需要使用下面一层提供服务。
协议和服务的概念的区分:
1、协议的实现保证了能够向上一层提供服务。本层的服务用户只能看见服务而无法看见下面的协议。下面的协议对上面的服务用户是透明的。
2、协议是“水平的”,即协议是控制两个对等实体进行通信的规则。但服务是“垂直的”,即服务是由下层通过层间接口向上层提供的。上层使用所提供的服务必须与下层交换一些命令,这些命令在OSI中称为服务原语。

1-22 网络协议的三个要素是什么?各有什么含义?

网络协议:为进行网络中的数据交换而建立的规则、标准或约定。由以下三个要素组成:
(1)语法:即数据与控制信息的结构或格式。
(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应。
(3)同步:即事件实现顺序的详细说明。

1-23 为什么一个网络协议必须把各种不利的情况都考虑到?

因为网络协议如果不全面考虑不利情况,当情况发生变化时,协议就会保持理想状况,一直等下去!就如同两个朋友在电话中约会好,下午3点在公园见面,并且约定不见不散。这个协议就是很不科学的,因为任何一方如果有耽搁了而来不了,就无法通知对方,而另一方就必须一直等下去!所以看一个计算机网络是否正确,不能只看在正常情况下是否正确,而且还必须非常仔细的检查协议能否应付各种异常情况。

1-24 论述具有五层协议的网络体系结构的要点,包括各层的主要功能。

综合OSI 和TCP/IP 的优点,采用一种原理体系结构。各层的主要功能:
物理层 物理层的任务就是透明地传送比特流。(注意:传递信息的物理媒体,如双绞
线、同轴电缆、光缆等,是在物理层的下面,当做第0 层。) 物理层还要确定连接电缆插头的定义及连接法。
数据链路层 数据链路层的任务是在两个相邻结点间的线路上无差错地传送以帧(frame)为单位的数据。每一帧包括数据和必要的控制信息。
网络层 网络层的任务就是要选择合适的路由,使 发送站的运输层所传下来的分组能够
正确无误地按照地址找到目的站,并交付给目的站的运输层。
运输层 运输层的任务是向上一层的进行通信的两个进程之间提供一个可靠的端到端
服务,使它们看不见运输层以下的数据通信的细节。
应用层 应用层直接为用户的应用进程提供服务。

1-25 试举出日常生活中有关“透明”这种名词的例子。

电视,计算机视窗操作系统、工农业产品

1-26 试解释以下名词:协议栈、实体、对等层、协议数据单元、服务访问点、客户、服务器、客户-服务器方式。

实体(entity) 表示任何可发送或接收信息的硬件或软件进程。
协议是控制两个对等实体进行通信的规则的集合。
客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。客户是服务的请求方,服务器是服务的提供方。
客户服务器方式所描述的是进程之间服务和被服务的关系。
协议栈:指计算机网络体系结构采用分层模型后,每层的主要功能由对等层协议的运行来实现,因而每层可用一些主要协议来表征,几个层次画在一起很像一个栈的结构.
对等层:在网络体系结构中,通信双方实现同样功能的层.
协议数据单元:对等层实体进行信息交换的数据单位.
服务访问点:在同一系统中相邻两层的实体进行交互(即交换信息)的地方.服务访问点SAP是一个抽象的概念,它实体上就是一个逻辑接口.

1-27 试解释everything over IP 和IP over everthing 的含义。

TCP/IP协议可以为各式各样的应用提供服务 (所谓的everything over ip)
允许IP协议在各式各样的网络构成的互联网上运行(所谓的ip over everything)

2-01 物理层要解决哪些问题?物理层的主要特点是什么?

物理层要解决的主要问题:
(1)物理层要尽可能地屏蔽掉物理设备和传输媒体,通信手段的不同,使数据链路层感觉不到这些差异,只考虑完成本层的协议和服务。
(2)给其服务用户(数据链路层)在一条物理的传输媒体上传送和接收比特流(一般为串行按顺序传输的比特流)的能力,为此,物理层应该解决物理连接的建立、维持和释放问题。
(3)在两个相邻系统之间唯一地标识数据电路
物理层的主要特点:
(1)由于在OSI之前,许多物理规程或协议已经制定出来了,而且在数据通信领域中,这些物理规程已被许多商品化的设备所采用,加之,物理层协议涉及的范围广泛,所以至今没有按OSI的抽象模型制定一套新的物理层协议,而是沿用已存在的物理规程,将物理层确定为描述与传输媒体接口的机械,电气,功能和规程特性。
(2)由于物理连接的方式很多,传输媒体的种类也很多,因此,具体的物理协议相当复杂。

2-02 归层与协议有什么区别?

规程专指物理层协议

2-03 试给出数据通信系统的模型并说明其主要组成构建的作用。

源点:源点设备产生要传输的数据。源点又称为源站。
发送器:通常源点生成的数据要通过发送器编码后才能在传输系统中进行传输。
接收器:接收传输系统传送过来的信号,并将其转换为能够被目的设备处理的信息。
终点:终点设备从接收器获取传送过来的信息。终点又称为目的站
传输系统:信号物理通道

2-04 试解释以下名词:数据,信号,模拟数据,模拟信号,基带信号,带通信号,数字数据,数字信号,码元,单工通信,半双工通信,全双工通信,串行传输,并行传输。

数据:是运送信息的实体。
信号:则是数据的电气的或电磁的表现。
模拟数据:运送信息的模拟信号。
模拟信号:连续变化的信号。
数字信号:取值为有限的几个离散值的信号。
数字数据:取值为不连续数值的数据。
码元(code):在使用时间域(或简称为时域)的波形表示数字信号时,代表不同离散数值的基本波形。
单工通信:即只有一个方向的通信而没有反方向的交互。
半双工通信:即通信和双方都可以发送信息,但不能双方同时发送(当然也不能同时接收)。这种通信方式是一方发送另一方接收,过一段时间再反过来。
全双工通信:即通信的双方可以同时发送和接收信息。
基带信号(即基本频带信号)——来自信源的信号。像计算机输出的代表各种文字或图像文件的数据信号都属于基带信号。
带通信号——把基带信号经过载波调制后,把信号的频率范围搬移到较高的频段以便在信道中传输(即仅在一段频率范围内能够通过信道)。

2-05 物理层的接口有哪几个方面的特性?个包含些什么内容?

(1)机械特性
明接口所用的接线器的形状和尺寸、引线数目和排列、固定和锁定装置等等。
(2)电气特性
指明在接口电缆的各条线上出现的电压的范围。
(3)功能特性
指明某条线上出现的某一电平的电压表示何意。
(4)规程特性
说明对于不同功能的各种可能事件的出现顺序。

2-06 数据在信道重的传输速率受哪些因素的限制?信噪比能否任意提高?香农公式在数据通信中的意义是什么?“比特/每秒”和“码元/每秒”有何区别?

码元传输速率受奈氏准则的限制,信息传输速率受香农公式的限制
香农公式在数据通信中的意义是:只要信息传输速率低于信道的极限传信率,就可实现无差传输。
比特/s是信息传输速率的单位
码元传输速率也称为调制速率、波形速率或符号速率。一个码元不一定对应于一个比特。

2-10 常用的传输媒体有哪几种?各有何特点?

双绞线
屏蔽双绞线 STP (Shielded Twisted Pair)
无屏蔽双绞线 UTP (Unshielded Twisted Pair)
同轴电缆
50 W 同轴电缆
75 W 同轴电缆
光缆
无线传输:短波通信/微波/卫星通信

2-13 为什么要使用信道复用技术?常用的信道复用技术有哪些?

为了通过共享信道、最大限度提高信道利用率。
频分、时分、码分、波分。

2-14 试写出下列英文缩写的全文,并做简单的解释。FDM,TDM,STDM,WDM,DWDM,CDMA,SONET,SDH,STM-1 ,OC-48.

FDM(frequency division multiplexing)
TDM(Time Division Multiplexing)
STDM(Statistic Time Division Multiplexing)
WDM(Wave Division Multiplexing)
DWDM(Dense Wave Division Multiplexing)
CDMA(Code Wave Division Multiplexing)
SONET(Synchronous Optical Network)同步光纤网
SDH(Synchronous Digital Hierarchy)同步数字系列
STM-1(Synchronous Transfer Module)第1级同步传递模块
OC-48(Optical Carrier)第48级光载波

2-15 码分多址CDMA为什么可以使所有用户在同样的时间使用同样的频带进行通信而不会互相干扰?这种复用方法有何优缺点?

各用户使用经过特殊挑选的相互正交的不同码型,因此彼此不会造成干扰。
这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。占用较大的带宽。

2-17 试比较xDSL、HFC以及FTTx接入技术的优缺点?

xDSL 技术就是用数字技术对现有的模拟电话用户线进行改造,使它能够承载宽带业务。成本低,易实现,但带宽和质量差异性大。
HFC网的最大的优点具有很宽的频带,并且能够利用已经有相当大的覆盖面的有线电视网。要将现有的450 MHz 单向传输的有线电视网络改造为 750 MHz 双向传输的 HFC 网需要相当的资金和时间。
FTTx(光纤到……)这里字母 x 可代表不同意思。可提供最好的带宽和质量、但现阶段线路和工程成本太大。

2-18 为什么在ASDL技术中,在不到1MHz的带宽中却可以传送速率高达每秒几个兆比?

靠先进的DMT编码,频分多载波并行传输、使得每秒传送一个码元就相当于每秒传送多个比特

3-01 数据链路(即逻辑链路)与链路(即物理链路)有何区别? “电路接通了”与”数据链路接通了”的区别何在?

数据链路与链路的区别在于数据链路出链路外,还必须有一些必要的规程来控制数据的传输,因此,数据链路比链路多了实现通信规程所需要的硬件和软件。
“电路接通了”表示链路两端的结点交换机已经开机,物理连接已经能够传送比特流了,但是,数据传输并不可靠,在物理连接基础上,再建立数据链路连接,才是“数据链路接通了”,此后,由于数据链路连接具有检测、确认和重传功能,才使不太可靠的物理链路变成可靠的数据链路,进行可靠的数据传输当数据链路断开连接时,物理电路连接不一定跟着断开连接。

3-02 数据链路层中的链路控制包括哪些功能?试讨论数据链路层做成可靠的链路层有哪些优点和缺点.

链路管理
帧定界
流量控制
差错控制
将数据和控制信息区分开
透明传输
寻址
可靠的链路层的优点和缺点取决于所应用的环境:对于干扰严重的信道,可靠的链路层可以将重传范围约束在局部链路,防止全网络的传输效率受损;对于优质信道,采用可靠的链路层会增大资源开销,影响传输效率。

3-03 网络适配器的作用是什么?网络适配器工作在哪一层?

适配器(即网卡)来实现数据链路层和物理层这两层的协议的硬件和软件
网络适配器工作在TCP/IP协议中的网络接口层(OSI中的数据链里层和物理层)

3-04 数据链路层的三个基本问题(帧定界、透明传输和差错检测)为什么都必须加以解决?

帧定界是分组交换的必然要求
透明传输避免消息符号与帧定界符号相混淆
差错检测防止合差错的无效数据帧浪费后续路由上的传输和处理资源

3-05 如果在数据链路层不进行帧定界,会发生什么问题?

无法区分分组与分组
无法确定分组的控制域和数据域
无法将差错更正的范围限定在确切的局部

3-06 PPP协议的主要特点是什么?为什么PPP不使用帧的编号?PPP适用于什么情况?为什么PPP协议不能使数据链路层实现可靠传输?

简单,提供不可靠的数据报服务,检错,无纠错
不使用序号和确认机制
地址字段A 只置为 0xFF。地址字段实际上并不起作用。
控制字段 C 通常置为 0x03。
PPP 是面向字节的
当 PPP 用在同步传输链路时,协议规定采用硬件来完成比特填充(和 HDLC 的做法一样),当 PPP 用在异步传输时,就使用一种特殊的字符填充法
PPP适用于线路质量不太差的情况下、PPP没有编码和确认机制

3-07 试分别讨论一下各种情况在什么条件下是透明传输,在什么条件下不是透明传输。(提示:请弄清什么是“透明传输”,然后考虑能否满足其条件。)

(1)普通的电话通信。
(2)电信局提供的公用电报通信。
(3)因特网提供的电子邮件服务。

3-08 PPP协议的工作状态有哪几种?当用户要使用PPP协议和ISP建立连接进行通信需要建立哪几种连接?每一种连接解决什么问题?
3-09 局域网的主要特点是什么?为什么局域网采用广播通信方式而广域网不采用呢?

局域网LAN是指在较小的地理范围内,将有限的通信设备互联起来的计算机通信网络
从功能的角度来看,局域网具有以下几个特点:
(1)共享传输信道,在局域网中,多个系统连接到一个共享的通信媒体上。
(2)地理范围有限,用户个数有限。通常局域网仅为一个单位服务,只在一个相对独立的局部范围内连网,如一座楼或集中的建筑群内,一般来说,局域网的覆盖范围越位10m~10km内或更大一些。
从网络的体系结构和传输检测提醒来看,局域网也有自己的特点:
(1)低层协议简单
(2)不单独设立网络层,局域网的体系结构仅相当于相当与OSI/RM的最低两层
(3)采用两种媒体访问控制技术,由于采用共享广播信道,而信道又可用不同的传输媒体,所以局域网面对的问题是多源,多目的的连连管理,由此引发出多中媒体访问控制技术
在局域网中各站通常共享通信媒体,采用广播通信方式是天然合适的,广域网通常采站点间直接构成格状网。

3-10 常用的局域网的网络拓扑有哪些种类?现在最流行的是哪种结构?为什么早期的以太网选择总线拓扑结构而不是星形拓扑结构,但现在却改为使用星形拓扑结构?

星形网,总线网,环形网,树形网
当时很可靠的星形拓扑结构较贵,人们都认为无源的总线结构更加可靠,但实践证明,连接有大量站点的总线式以太网很容易出现故障,而现在专用的ASIC芯片的使用可以讲星形结构的集线器做的非常可靠,因此现在的以太网一般都使用星形结构的拓扑。

3-11 什么叫做传统以太网?以太网有哪两个主要标准?

DIX Ethernet V2 标准的局域网
DIX Ethernet V2 标准与 IEEE 的 802.3 标准

3-12 数据率为10Mb/s的以太网在物理媒体上的码元传输速率是多少码元/秒?

码元传输速率即为波特率,以太网使用曼彻斯特编码,这就意味着发送的每一位都有两个信号周期。标准以太网的数据速率是10MB/s,因此波特率是数据率的两倍,即20M波特

3-13 为什么LLC子层的标准已制定出来了但现在却很少使用?

由于 TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。

3-14 试说明10BASE-T中的“10”、“BASE”和“T”所代表的意思。

10BASE-T中的“10”表示信号在电缆上的传输速率为10MB/s,“BASE”表示电缆上的信号是基带信号,“T”代表双绞线星形网,但10BASE-T的通信距离稍短,每个站到集线器的距离不超过100m。

3-15 以太网使用的CSMA/CD协议是以争用方式接入到共享信道。这与传统的时分复用TDM相比优缺点如何?

传统的时分复用TDM是静态时隙分配,均匀高负荷时信道利用率高,低负荷或符合不均匀时资源浪费较大,CSMA/CD课动态使用空闲新到资源,低负荷时信道利用率高,但控制复杂,高负荷时信道冲突大。

3-16 数据率为10Mb/s的以太网在物理媒体上的码元传输速率是多少码元/秒?

码元传输速率即为波特率,以太网使用曼彻斯特编码,这就意味着发送的每一位都有两个信号周期。标准以太网的数据速率是10MB/s,因此波特率是数据率的两倍,即20M波特

3-17 为什么LLC子层的标准已制定出来了但现在却很少使用?

由于 TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。

3-18 试说明10BASE-T中的“10”、“BASE”和“T”所代表的意思。

10BASE-T中的“10”表示信号在电缆上的传输速率为10MB/s,“BASE”表示电缆上的信号是基带信号,“T”代表双绞线星形网,但10BASE-T的通信距离稍短,每个站到集线器的距离不超过100m。

3-19 以太网使用的CSMA/CD协议是以争用方式接入到共享信道。这与传统的时分复用TDM相比优缺点如何?

传统的时分复用TDM是静态时隙分配,均匀高负荷时信道利用率高,低负荷或符合不均匀时资源浪费较大,CSMA/CD课动态使用空闲新到资源,低负荷时信道利用率高,但控制复杂,高负荷时信道冲突大。

3-20 假定一个以太网上的通信量中的80%是在本局域网上进行的,而其余的20%的通信量是在本局域网和因特网之间进行的。另一个以太网的情况则反过来。这两个以太网一个使用以太网集线器,而另一个使用以太网交换机。你认为以太网交换机应当用在哪一个网络?

集线器为物理层设备,模拟了总线这一共享媒介共争用,成为局域网通信容量的瓶颈。
交换机则为链路层设备,可实现透明交换
局域网通过路由器与因特网相连
当本局域网和因特网之间的通信量占主要成份时,形成集中面向路由器的数据流,使用集线器冲突较大,采用交换机能得到改善。
当本局域网内通信量占主要成份时,采用交换机改善对外流量不明显

3-21 10Mb/s以太网升级到100Mb/s、1Gb/S和10Gb/s时,都需要解决哪些技术问题?为什么以太网能够在发展的过程中淘汰掉自己的竞争对手,并使自己的应用范围从局域网一直扩展到城域网和广域网?

技术问题:使参数a保持为较小的数值,可通过减小最大电缆长度或增大帧的最小长度
在100mb/s的以太网中采用的方法是保持最短帧长不变,但将一个网段的最大电缆的度减小到100m,帧间时间间隔从原来9.6微秒改为现在的0.96微秒
吉比特以太网仍保持一个网段的最大长度为100m,但采用了“载波延伸”的方法,使最短帧长仍为64字节(这样可以保持兼容性)、同时将争用时间增大为512字节。并使用“分组突发”减小开销
10吉比特以太网的帧格式与10mb/s,100mb/s和1Gb/s以太网的帧格式完全相同
吉比特以太网还保留标准规定的以太网最小和最大帧长,这就使用户在将其已有的以太网进行升级时,仍能和较低速率的以太网很方便地通信。
由于数据率很高,吉比特以太网不再使用铜线而只使用光纤作为传输媒体,它使用长距离(超过km)的光收发器与单模光纤接口,以便能够工作在广

3-30 以太网交换机有何特点?用它怎样组成虚拟局域网?

以太网交换机则为链路层设备,可实现透明交换
虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。
这些网段具有某些共同的需求。
虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。

3-31 网桥的工作原理和特点是什么?网桥与转发器以及以太网交换机有何异同?

网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发。
网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口
转发器工作在物理层,它仅简单地转发信号,没有过滤能力
以太网交换机则为链路层设备,可视为多端口网桥

3-32 网桥中的转发表是用自学习算法建立的。如果有的站点总是不发送数据而仅仅接受数据,那么在转发表中是否就没有与这样的站点相对应的项目?如果要向这个站点发送数据帧,那么网桥能够把数据帧正确转发到目的地址吗?

没有与这样的站点相对应的项目;
网桥能够利用广播把数据帧正确转发到目的地址

0
Posted in 计算机网络

1-10 试在下列条件下比较电路交换和分组交换。要传送的报文共x(bit)。从源点到终点共经过k段链路,每段链路的传播时延为d(s),数据率为b(b/s)。在电路交换时电路的建立时间为s(s)。在分组交换时分组长度为p(bit),且各结点的排队等待时间可忽略不计。问在怎样的条件下,分组交换的时延比电路交换的要小?(提示:画一下草图观察k段链路共有几个结点。)

答:线路交换时延:kd+x/b+s, 分组交换时延:kd+(x/p)(p/b)+ (k-1)(p/b)
其中(k-1)(p/b)表示K段传输中,有(k-1)次的储存转发延迟,当s>(k-1)(p/b)时,电路交换的时延比分组交换的时延大,当x>>p,相反。

1-11 在上题的分组交换网中,设报文长度和分组长度分别为x和(p+h)(bit),其中p为分组的数据部分的长度,而h为每个分组所带的控制信息固定长度,与p的大小无关。通信的两端共经过k段链路。链路的数据率为b(b/s),但传播时延和结点的排队时间均可忽略不计。若打算使总的时延为最小,问分组的数据部分长度p应取为多大?(提示:参考图1-12的分组交换部分,观察总的时延是由哪几部分组成。)

答:总时延D表达式,分组交换时延为:D= kd+(x/p)((p+h)/b)+ (k-1)(p+h)/b
D对p求导后,令其值等于0,求得p=[(xh)/(k-1)]^0.5

1-15 假定网络利用率达到了90%。试估计一下现在的网络时延是它的最小值的多少倍?

解:设网络利用率为U。,网络时延为D,网络时延最小值为D0
U=90%;D=D0/(1-U)—->D/ D0=10
  现在的网络时延是最小值的10倍

1-17 收发两端之间的传输距离为1000km,信号在媒体上的传播速率为2×108m/s。试计算以下两种情况的发送时延和传播时延:
(1) 数据长度为107bit,数据发送速率为100kb/s。
(2) 数据长度为103bit,数据发送速率为1Gb/s。
从上面的计算中可以得到什么样的结论?

解:(1)发送时延:ts=107/105=100s
传播时延tp=106/(2×108)=0.005s
(2)发送时延ts =103/109=1µs
传播时延:tp=106/(2×108)=0.005s
结论:若数据长度大而发送速率低,则在总的时延中,发送时延往往大于传播时延。但若数据长度短而发送速率高,则传播时延就可能是总时延中的主要成分。

1-18 假设信号在媒体上的传播速度为2×108m/s.媒体长度L分别为:
(1)10cm(网络接口卡)
(2)100m(局域网)
(3)100km(城域网)
(4)5000km(广域网)
试计算出当数据率为1Mb/s和10Gb/s时在以上媒体中正在传播的比特数。

解:(1)1Mb/s:传播时延=0.1/(2×108)=5×10-10
比特数=5×10-10×1×106=5×10-4
1Gb/s: 比特数=5×10-10×1×109=5×10-1
(2)1Mb/s: 传播时延=100/(2×108)=5×10-7
比特数=5×10-7×1×106=5×10-1
1Gb/s: 比特数=5×10-7×1×109=5×102
(3) 1Mb/s: 传播时延=100000/(2×108)=5×10-4
比特数=5×10-4×1×106=5×102
1Gb/s: 比特数=5×10-4×1×109=5×105
(4)1Mb/s: 传播时延=5000000/(2×108)=2.5×10-2
比特数=2.5×10-2×1×106=5×104
1Gb/s: 比特数=2.5×10-2×1×109=5×107

1-19 长度为100字节的应用层数据交给传输层传送,需加上20字节的TCP首部。再交给网络层传送,需加上20字节的IP首部。最后交给数据链路层的以太网传送,加上首部和尾部工18字节。试求数据的传输效率。数据的传输效率是指发送的应用层数据除以所发送的总数据(即应用数据加上各种首部和尾部的额外开销)。

若应用层数据长度为1000字节,数据的传输效率是多少?
解:(1)100/(100+20+20+18)=63.3%
(2)1000/(1000+20+20+18)=94.5%

2-07 假定某信道受奈氏准则限制的最高码元速率为20000码元/秒。如果采用振幅调制,把码元的振幅划分为16个不同等级来传送,那么可以获得多高的数据率(b/s)?

答:C=RLog2(16)=20000b/s4=80000b/s

2-08 假定要用3KHz带宽的电话信道传送64kb/s的数据(无差错传输),试问这个信道应具有多高的信噪比(分别用比值和分贝来表示?这个结果说明什么问题?)

答:C=Wlog2(1+S/N)(b/s)
W=3khz,C=64khz—-àS/N=64.2dB 是个信噪比要求很高的信源

2-09 用香农公式计算一下,假定信道带宽为为3100Hz,最大信道传输速率为35Kb/s,那么若想使最大信道传输速率增加60%,问信噪比S/N应增大到多少倍?如果在刚才计算出的基础上将信噪比S/N应增大到多少倍?如果在刚才计算出的基础上将信噪比S/N再增大到十倍,问最大信息速率能否再增加20%?

答:C = W log2(1+S/N) b/s-àSN1=2(C1/W)-1=2(35000/3100)-1
SN2=2(C2/W)-1=2(1.6C1/w)-1=2(1.635000/3100)-1
SN2/SN1=100信噪比应增大到约100倍。
C3=Wlong2(1+SN3)=Wlog2(1+10
SN2)
C3/C2=18.5%
如果在此基础上将信噪比S/N再增大到10倍,最大信息通率只能再增加18.5%左右

2-11假定有一种双绞线的衰减是0.7dB/km(在 1 kHz时),若容许有20dB的衰减,试问使用这种双绞线的链路的工作距离有多长?如果要双绞线的工作距离增大到100公里,试应当使衰减降低到多少?

解:使用这种双绞线的链路的工作距离为=20/0.7=28.6km
衰减应降低到20/100=0.2db

2-12 试计算工作在1200nm到1400nm之间以及工作在1400nm到1600nm之间的光波的频带宽度。假定光在光纤中的传播速率为2*10e8m/s.

解:
V=L*F-àF=V/L–àB=F2-F1=V/L1-V/L2
1200nm到1400nm:带宽=23.8THZ
1400nm到1600nm:带宽=17.86THZ
2-16 共有4个站进行码分多址通信。4个站的码片序列为
A:(-1-1-1+1+1-1+1+1) B:(-1-1+1-1+1+1+1-1)
C:(-1+1-1+1+1+1-1-1) D:(-1+1-1-1-1-1+1-1)
现收到这样的码片序列S:(-1+1-3+1-1-3+1+1)。问哪个站发送数据了?发送数据的站发送的是0还是1?
解:S·A=(+1-1+3+1-1+3+1+1)/8=1, A发送1
S·B=(+1-1-3-1-1-3+1-1)/8=-1, B发送0
S·C=(+1+1+3+1-1-3-1-1)/8=0, C无发送
S·D=(+1+1+3-1+1+3+1-1)/8=1, D发送1

3-01 要发送的数据为1101011011。采用CRC的生成多项式是P(X)=X4+X+1。试求应添加在数据后面的余数。数据在传输过程中最后一个1变成了0,问接收端能否发现?若数据在传输过程中最后两个1都变成了0,问接收端能否发现?采用CRC检验后,数据链路层的传输是否就变成了可靠的传输?

答:作二进制除法,1101011011 0000 10011 得余数1110 ,添加的检验序列是1110.
作二进制除法,两种错误均可发展
仅仅采用了CRC检验,缺重传机制,数据链路层的传输还不是可靠的传输。

3-02 要发送的数据为101110。采用CRCD 生成多项式是P(X)=X3+1。试求应添加在数据后面的余数。

答:作二进制除法,101110 000 10011 添加在数据后面的余数是011

3-03 一个PPP帧的数据部分(用十六进制写出)是7D 5E FE 27 7D 5D 7D 5D 65 7D 5E。试问真正的数据是什么(用十六进制写出)?

答:7D 5E FE 27 7D 5D 7D 5D 65 7D 5E
7E FE 27 7D 7D 65 7D

3-04 PPP协议使用同步传输技术传送比特串0110111111111100。试问经过零比特填充后变成怎样的比特串?若接收端收到的PPP帧的数据部分是0001110111110111110110,问删除发送端加入的零比特后变成怎样的比特串?

答:011011111 11111 00
011011111011111000
0001110111110111110110
000111011111 11111 110

3-05 假定1km长的CSMA/CD网络的数据率为1Gb/s。设信号在网络上的传播速率为200000km/s。求能够使用此协议的最短帧长。

答:对于1km电缆,单程传播时间为1/200000=5为微秒,来回路程传播时间为10微秒,为了能够按照CSMA/CD工作,最小帧的发射时间不能小于10微秒,以Gb/s速率工作,10微秒可以发送的比特数等于1010^-6/110^-9=10000,因此,最短帧是10000位或1250字节长

3-06 什么叫做比特时间?使用这种时间单位有什么好处?100比特时间是多少微秒?

答:比特时间是发送一比特多需的时间,它是传信率的倒数,便于建立信息长度与发送延迟的关系
“比特时间”换算成“微秒”必须先知道数据率是多少,如数据率是10Mb/s,则100比特时间等于10微秒。

3-07 假定在使用CSMA/CD协议的10Mb/s以太网中某个站在发送数据时检测到碰撞,执行退避算法时选择了随机数r=100。试问这个站需要等待多长时间后才能再次发送数据?如果是100Mb/s的以太网呢?

答:对于10mb/s的以太网,以太网把争用期定为51.2微秒,要退后100个争用期,等待时间是51.2(微秒)100=5.12ms
对于100mb/s的以太网,以太网把争用期定为5.12微秒,要退后100个争用期,等待时间是5.12(微秒)
100=512微秒

3-08 公式(3-3)表示,以太网的极限信道利用率与连接在以太网上的站点数无关。能否由此推论出:以太网的利用率也与连接在以太网的站点数无关?请说明你的理由。

答:实际的以太网各给发送数据的时刻是随即的,而以太网的极限信道利用率的得出是假定以太网使用了特殊的调度方法(已经不再是CSMA/CD了),使各结点的发送不发生碰撞。

3-09 假定站点A和B在同一个10Mb/s以太网网段上。这两个站点之间的传播时延为225比特时间。现假定A开始发送一帧,并且在A发送结束之前B也发送一帧。如果A发送的是以太网所容许的最短的帧,那么A在检测到和B发生碰撞之前能否把自己的数据发送完毕?换言之,如果A在发送完毕之前并没有检测到碰撞,那么能否肯定A所发送的帧不会和B发送的帧发生碰撞?(提示:在计算时应当考虑到每一个以太网帧在发送到信道上时,在MAC帧前面还要增加若干字节的前同步码和帧定界符)

答:设在t=0时A开始发送,在t=(64+8)*8=576比特时间,A应当发送完毕。t=225比特时间,B就检测出A的信号。只要B在t=224比特时间之前发送数据,A在发送完毕之前就一定检测到碰撞,就能够肯定以后也不会再发送碰撞了
如果A在发送完毕之前并没有检测到碰撞,那么就能够肯定A所发送的帧不会和B发送的帧发生碰撞(当然也不会和其他站点发生碰撞)。

3-10 在上题中的站点A和B在t=0时同时发送了数据帧。当t=255比特时间,A和B同时检测到发生了碰撞,并且在t=255+48=273比特时间完成了干扰信号的传输。A和B在CSMA/CD算法中选择不同的r值退避。假定A和B选择的随机数分别是rA=0和rB=1。试问A和B各在什么时间开始重传其数据帧?A重传的数据帧在什么时间到达B?A重传的数据会不会和B重传的数据再次发生碰撞?B会不会在预定的重传时间停止发送数据?

答:t=0时,A和B开始发送数据
T1=225比特时间,A和B都检测到碰撞(tau)
T2=273比特时间,A和B结束干扰信号的传输(T1+48)
T3=594比特时间,A 开始发送(T2+Tau+rATau+96)
T4=785比特时间,B再次检测信道。(T4+T2+Tau+Rb
Tau)如空闲,则B在T5=881比特时间发送数据、否则再退避。(T5=T4+96)
A重传的数据在819比特时间到达B,B先检测到信道忙,因此B在预定的881比特时间停止发送

3-11 以太网上只有两个站,它们同时发送数据,产生了碰撞。于是按截断二进制指数退避算法进行重传。重传次数记为i,i=1,2,3,…..。试计算第1次重传失败的概率、第2次重传的概率、第3次重传失败的概率,以及一个站成功发送数据之前的平均重传次数I。

答:将第i次重传成功的概率记为pi。显然
第一次重传失败的概率为0.5,第二次重传失败的概率为0.25,第三次重传失败的概率为0.125.平均重传次数I=1.637

3-12 有10个站连接到以太网上。试计算一下三种情况下每一个站所能得到的带宽。

(1)10个站都连接到一个10Mb/s以太网集线器;
(2)10个站都连接到一个100Mb/s以太网集线器;
(3)10个站都连接到一个10Mb/s以太网交换机。
答:(1)10个站都连接到一个10Mb/s以太网集线器:10mbs
(2)10个站都连接到一个100mb/s以太网集线器:100mbs
(3)10个站都连接到一个10mb/s以太网交换机:10mbs

0
Posted in 计算机网络