Network - 计算机网络复习总结

第一章 概述

  1. 计算机网络(简称网络)把许多计算机连接在一起,而互联网则把许多网络连接在一起,是网络的网络。因特网是世界上最大的互联网。
  2. 以小写字母i开始的internet(互联网或互连网)是通用名词,它泛指由多个计算机网络互连而成的网络。在这些网络之间的通信协议(即通信规则)可以是任意的。
  3. 以大写字母I开始的Internet(因特网)是专有名词,它指当前全球最大的、开放的、由众多网络相互连接而成的特点计算机网络,它采用TCP/IP协议族作为通信规则,其前身是美国的ARPANET。
  4. 因特网现在采用存储转发的分组交换技术,以及三层因特网服务提供者(ISP)结构。
  5. 因特网按工作方式可划分为边缘部分和核心部分。主机在网络的边缘部分,其作用是进行信息处理。路由器在网络的核心部分,其作用是按存储转发方式进行分组交换。
  6. 计算机通信是计算机中进程(即运行着的程序)之间的通信。计算机网络采用的通信方式是客户-服务器方式和对等连接方式(P2P方式)。
  7. 客户和服务器都是指通信中所涉及的两个应用进程。客户是服务请求方,服务器是服务提供方。
  8. 按作用范围的不同,计算机网络分为广域网WAN、城域网MAN、局域网LAN和个人区域网PAN。
  9. 计算机网络最常用的性能指标是:速率、带宽、吞吐量、时延(发送时延、传播时延、处理时延、排队时延)、时延带宽积、往返时间和信道(或网络)利用率
  10. 网络协议即协议,是为进行网络中的数据交换而建立的规则。计算机网络的各层及其协议的集合,称为网络的体系结构。
  11. 五层协议的体系结构由应用层、运输层、网络层、数据链路层和物理层组成。运输层最重要的协议是传输控制协议TCP和用户数据报协议UDP,而网络层最重要的协议是网际协议IP。

第二章 物理层

  1. 物理层的主要任务就是确定于传输媒体的接口有关的一些特性,如机械特性、电气特性、功能特性和过程特性。
  2. 一个数据通信系统可划分为三大部分,即源系统、传输系统、目的系统。源系统包括源点(也称源站or信源)和发送器,目的系统包括接收器和终点(也称目的站or信宿)。
  3. 通信的目的是传送信息,如话音、文字、图像、视频等均是信息。数据是运送信息的实体。信号时数据的电气或电磁的表现。
  4. 信号可分为模拟信号(连续信号)和数字信号(离散信号)。代表数字信号不通离散值的基本波形称为码元。
  5. 根据双方信息交互方式的不同,通信可分为单向通信(单工通信)、双向交替通信(半双工通信)、双向同时通信(全双工通信)。
  6. 来自信源的信号叫基带信号。信号要在信道上传输就要经过调制。调制有基带调制和带通调制之分。最基本的带通调制方法有调幅、调频、调相。
  7. 传输媒体分两大类:导引型传输媒体(双绞线、同轴电缆、光纤)和非导引型传输媒体(无线或红外或激光)
  8. 常用的信道复用技术:FDM, TDM, CDM, WDM(光的频分复用)
  9. 用户到因特网的宽带接入方法有:非对称数字用户线ADSL(用数字技术对现有的模拟电话用户线进行改造)、光纤同轴混合网HFC(在有线电视网的基础上开发的)、FTTx(光纤到……)

第三章 数据链路层

一、数据链路层使用的信道分类
数据链路层使用的信道主要有以下两种类型:
点对点信道:这种信道使用一对一的点对点通信方式。
广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。
二、各层传输的数据单位
网络层:IP数据报(或IP分组)
数据链路层:帧
物理层:比特
三、数据链路层传输数据时的三个基本问题
(1) 封装成帧(framing)——在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。首部和尾部的一个重要作用就是进行帧定界。
(2) 透明传输
(3) 差错控制
四、点对点协议 PPP (Point-to-Point Protocol)
现在全世界使用得最多的数据链路层协议是点对点协议 PPP。用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。
1. PPP 协议应满足的需求
 简单——这是首要的要求
 封装成帧
 透明性
 多种网络层协议
 多种类型链路
 差错检测
 检测连接状态
 最大传送单元
 网络层地址协商
 数据压缩协商
2. PPP 协议不需要的功能
 纠错 (只需要检测有无错,而不需纠错)
 流量控制
 序号
 多点线路
 半双工或单工链路
3.PPP 协议有三个组成部分
1) 一个将 IP 数据报封装到串行链路的方法。
2) 链路控制协议 LCP (Link Control Protocol)。
3) 网络控制协议 NCP (Network Control Protocol)。
4.PPP 协议之不使用序号和确认机制.

五、媒体共享技术
1. 静态划分信道
1) 频分复用
2) 时分复用
3) 波分复用
4) 码分复用
2. 动态媒体接入控制(多点接入)
1) 随机接入
2) 受控接入 ,如多点线路探询(polling),或轮询。
六、以太网的两个标准
DIX Ethernet V2 标准与 IEEE 的 802.3 标准只有很小的差别,因此可以将 802.3 局域网简称为“以太网”。
七、数据链路层的两个子层
➢ 逻辑链路控制 LLC (Logical Link Control)子层
➢ 媒体接入控制 MAC (Medium Access Control)子层。
与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的,如下图所示:

局域网对 LLC 子层是透明的
注意:
1. 由于 TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。
2. 很多厂商生产的适配器上就仅装有 MAC 协议而没有 LLC 协议。
3. 所以我们以后一般不考虑 LLC 子层 。

八、以太网提供的服务
 以太网提供的服务是不可靠的交付,即尽最大努力的交付。
 当目的站收到有差错的数据帧时就丢弃此帧,其他什么也不做。差错的纠正由高层来决定。
 如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送。
 以太网发送的数据都使用曼彻斯特(Manchester)编码。

图 曼彻斯特编码方式
九、载波监听多点接入/冲突检测(CSMA/CD)
 CSMA/CD 表示 Carrier Sense Multiple Access with Collision Detection。
 “多点接入”表示许多计算机以多点接入的方式连接在一根总线上。
 “载波监听”是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
 总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
➢ “冲突检测”就是计算机边发送数据边检测信道上的信号电压大小。
➢ 当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大(互相叠加)。
➢ 当一个站检测到的信号电压摆动值超过一定的门限值时,就认为总线上至少有两个站同时在发送数据,表明产生了冲突。
检测到碰撞后
➢ 在发生碰撞时,总线上传输的信号产生了严重的失真,无法从中恢复出有用的信息来。
➢ 每一个正在发送数据的站,一旦发现总线上出现了碰撞,就要立即停止发送,免得继续浪费网络资源,然后等待一段随机时间后再次发送。
重要特性
➢ 使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行双向交替通信(半双工通信)。
➢ 每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
➢ 这种发送的不确定性使整个以太网的平均通信量远小于以太网的最高数据率。

十、以太网的 MAC 层
1、48 位的 MAC 地址
在局域网中,硬件地址又称为物理地址,或 MAC 地址,共48位,其前3个字节(即高24位)用于标识不同的生产厂家,后3个字节(即低24位)由厂家自行指派,用于标识产品号。
2、从网络上发往本站的帧分为以下3种:
1) 单播(unicast)帧(一对一)
2) 广播(broadcast)帧(一对全体)
3) 多播(multicast)帧(一对多)
3、 MAC 帧的格式
常用的以太网MAC帧格式有两种标准 :
1) DIX Ethernet V2 标准
2) IEEE 的 802.3 标准
最常用的 MAC 帧是以太网 V2 的格式,如下:

4、帧间最小间隔
➢ 帧间最小间隔为 9.6 微s,相当于 96 bit 的发送时间。
➢ 一个站在检测到总线开始空闲后,还要等待 9.6 微s 才能再次发送数据。
➢ 这样做是为了使刚刚收到数据帧的站的接收缓存来得及清理,做好接收下一帧的准备。

5、 多接口网桥——以太网交换机
以太网交换机通常都有十几个接口。因此,以太网交换机实质上就是一个多接口的网桥,可见交换机工作在数据链路层。
➢ 以太网交换机的每个接口都直接与主机相连,并且一般都工作在全双工方式。
➢ 交换机能同时连通许多对的接口,使每一对相互通信的主机都能像独占通信媒体那样,进行无碰撞地传输数据。
➢ 以太网交换机由于使用了专用的交换结构芯片,其交换速率就较高。

十一、虚拟局域网
➢ 虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。
 这些网段具有某些共同的需求。
 每一个 VLAN 的帧都有一个明确的标识符,指明发送这个帧的工作站是属于哪一个 VLAN。
➢ 虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。
➢ 虚拟局域网限制了接收广播信息的工作站数,使得网络不会因传播过多的广播信息(即“广播风暴”)而引起性能恶化。
➢ 虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。

第四章 网络层

一、 网络层提供的两种服务
网络层提供两种类型的的服务,即:虚电路服务和数据报服务。
➢ 面向连接的通信方式
 建立虚电路(Virtual Circuit),以保证双方通信所需的一切网络资源。

图示 虚电路服务
• 虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。
• 请注意,电路交换的电话通信是先建立了一条真正的连接。因此分组交换的虚连接和电路交换的连接只是类似,但并不完全一样。
 如果再使用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点。
➢ 无连接的通信方式
网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
图示 数据报服务

二、网际协议IP
网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。与 IP 协议配套使用的还有:
➢ 地址解析协议 ARP (Address Resolution Protocol)
➢ 网际控制报文协议 ICMP (Internet Control Message Protocol)
注:ICMP 不是高层协议,而是 IP 层的协议。
➢ 网际组管理协议 IGMP (Internet Group Management Protocol)
三、网际层的 IP 协议及配套协议

四、网络互相连接起来要使用一些中间设备
中间设备又称为中间系统或中继(relay)系统。
➢ 物理层中继系统:转发器(repeater)、中继器。
➢ 数据链路层中继系统:网桥或桥接器(bridge)。
➢ 网络层中继系统:路由器(router)。
➢ 网桥和路由器的混合物:桥路器(brouter)。
➢ 网络层以上的中继系统:网关(gateway)。
五、网络互连使用路由器
➢ 当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络。
➢ 网关由于比较复杂,目前使用得较少。
➢ 互联网都是指用路由器进行互连的网络。
➢ 由于历史的原因,许多有关 TCP/IP 的文献将网络层使用的路由器称为网关。
 路由器总是具有两个或两个以上的 IP 地址。
 路由器的每一个接口都有一个不同网络号的 IP 地址。
六、分类 IP 地址
每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器)。
两级的 IP 地址可以记为:IP 地址 ::= { <网络号>, <主机号>} , ::= 代表“定义为”

IP 地址中的网络号字段和主机号字段

常用的三种类别的 IP 地址

IP 地址的一些重要特点
(1) IP 地址是一种分等级的地址结构
(2) 实际上 IP 地址是标志一个主机(或路由器)和一条链路的接口。
➢ 当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的 IP 地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机(multihomed host)。
➢ 由于一个路由器至少应当连接到两个网络(这样它才能将 IP 数据报从一个网络转发到另一个网络),因此一个路由器至少应当有两个不同的 IP 地址。
(3) 用转发器或网桥连接起来的若干个局域网仍为一个网络,因此这些局域网都具有同样的网络号net-id。
(4) 所有分配到网络号 net-id 的网络,无论是范围很小的局域网,还是可能覆盖很大地理范围的广域网,都是平等的。

七、IP 地址与硬件地址
➢ 网络层及以上使用 IP 地址
路由器只根据目的站的 IP 地址的网络号进行路由选择
➢ 链路层及以下使用MAC地址
在具体的物理网络的链路层只能看见 MAC 帧而看不见 IP 数据报
八、地址解析协议 ARP
1、ARP
不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址。
每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表。
当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址。
ARP 是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。
如果所要找的主机和源主机不在同一个局域网上,那么就要通过 ARP 找到一个位于本局域网上的某个路由器的硬件地址,然后把分组发送给这个路由器,让这个路由器把分组转发给下一个网络。剩下的工作就由下一个网络来做。
九、查找路由表
在路由表中,对每一条路由,最主要的是(目的网络地址,下一跳地址).
根据目的网络地址就能确定下一跳路由器,这样做的结果是:
➢ IP 数据报最终一定可以找到目的主机所在目的网络上的路由器(可能要通过多次的间接交付)。
➢ 只有到达最后一个路由器时,才试图向目的主机进行直接交付。
十、划分子网(subnetting)
从 1985 年起在 IP 地址中又增加了一个“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址。这种做法叫作划分子网(subnetting) 。划分子网已成为因特网的正式标准协议。
➢ 划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。
➢ 从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位。
➢ IP地址 ::= {<网络号>, <子网号>, <主机号>}
➢ 凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器。
➢ 然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网。
➢ 最后就将 IP 数据报直接交付目的主机。
子网掩码
➢ 从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分。
➢ 使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分。

IP 地址的各字段和子网掩码

默认子网掩码
十一、因特网的路由选择协议
1、 有关路由选择协议的几个基本概念:
1) 理想的路由算法
➢ 算法必须是正确的和完整的。
➢ 算法在计算上应简单。
➢ 算法应能适应通信量和网络拓扑的变化,这就是说,要有自适应性。
➢ 算法应具有稳定性。
➢ 算法应是公平的。
➢ 算法应是最佳的。
2、关于“最佳路由”
➢ 不存在一种绝对的最佳路由算法。
➢ 所谓“最佳”只能是相对于某一种特定要求下得出的较为合理的选择而已。
➢ 实际的路由选择算法,应尽可能接近于理想的算法。
➢ 路由选择是个非常复杂的问题
 它是网络中的所有结点共同协调工作的结果。
 路由选择的环境往往是不断变化的,而这种变化有时无法事先知道。
3、从路由算法的自适应性考虑:
➢ 静态路由选择策略——即非自适应路由选择,其特点是简单和开销较小,但不能及时适应网络状态的变化。
➢ 动态路由选择策略——即自适应路由选择,其特点是能较好地适应网络状态的变化,但实现起来较为复杂,开销也比较大。
4、因特网中的两大类路由选择协议:
➢ 内部网关协议 IGP (Interior Gateway Protocol)——即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用得最多,其具体的协议有多种,如 RIP 和 OSPF 协议:
 RIP: Routing Information Protocol 路由信息协议
→ RIP 协议的三个要点:
 仅和相邻路由器交换信息。
 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。
 按固定的时间间隔交换路由信息,例如,每隔 30 秒。
 OSPF:Open Shortest Path First 开放最短路径优先
➢ 外部网关协议EGP (External Gateway Protocol) —— 若源站和目的站处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中。这样的协议就是外部网关协议 EGP。在外部网关协议中目前使用最多的是BGP-4。
 BGP:Border Gateway Protocol 边界网关协议
 BGP 是不同自治系统的路由器之间交换路由信息的协议。
 边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。
十二、 专用地址(本地地址)和全球地址
本地地址——仅在机构内部使用的 IP 地址,可以由本机构自行分配,而不需要向因特网的管理机构申请。
全球地址——全球唯一的IP地址,必须向因特网的管理机构申请。
2、专用地址(Private Address)
10.0.0.0 到 10.255.255.255
172.16.0.0 到 172.31.255.255
192.168.0.0 到 192.168.255.255
这些地址只能用于一个机构的内部通信,而不能用于和因特网上的主机通信。
专用地址只能用作本地地址而不能用作全球地址。在因特网中的所有路由器对目的地址是专用地址的数据报一律不进行转发。

第五章 运输层

一 、应用进程之间的通信
➢ 两个主机进行通信实际上就是两个主机中的应用进程互相通信。
➢ 应用进程之间的通信又称为端到端的通信。
➢ 运输层的一个很重要的功能就是复用和分用。应用层不同进程的报文通过不同的端口向下交到运输层,再往下就共用网络层提供的服务。
➢ “运输层提供应用进程间的逻辑通信”。“逻辑通信”的意思是:运输层之间的通信好像是沿水平方向传送数据。但事实上这两个运输层之间并没有一条水平方向的物理连接。
二、运输层的主要功能
➢ 运输层为应用进程之间提供端到端的逻辑通信(网络层是为主机之间提供逻辑通信)。

图示 运输层协议和网络层协议的主要区别
➢ 运输层还要对收到的报文进行差错检测。
➢ 运输层需要有两种不同的运输协议,即面向连接的 TCP 和无连接的 UDP。
➢ TCP的特点:
 TCP 是面向连接的运输层协议。
 每一条 TCP 连接只能有两个端点(endpoint),每一条 TCP 连接只能是点对点的(一对一)。
 TCP 提供可靠交付的服务。
 TCP 提供全双工通信。
 面向字节流。
注意:
 TCP 连接是一条虚连接而不是一条真正的物理连接。
 TCP 对应用进程一次把多长的报文发送到TCP 的缓存中是不关心的。
 TCP 根据对方给出的窗口值和当前网络拥塞的程度来决定一个报文段应包含多少个字节(UDP 发送的报文长度是应用进程给出的)。
 TCP 可把太长的数据块划分短一些再传送。TCP 也可等待积累有足够多的字节后再构成报文段发送出去。
➢ UDP 是面向报文的:
 发送方 UDP 对应用程序交下来的报文,在添加首部后就向下交付 IP 层。UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。
 应用层交给 UDP 多长的报文,UDP 就照样发送,即一次发送一个报文。
 接收方 UDP 对 IP 层交上来的 UDP 用户数据报,在去除首部后就原封不动地交付上层的应用进程,一次交付一个完整的报文。
 应用程序必须选择合适大小的报文。

三、 TCP的端口
➢ 端口用一个 16 位端口号进行标志。
➢ 端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。在因特网中不同计算机的相同端口号是没有联系的。
四、TCP的连接
➢ TCP 把连接作为最基本的抽象。
➢ 每一条 TCP 连接有两个端点。
➢ TCP 连接的端点不是主机,不是主机的IP 地址,不是应用进程,也不是运输层的协议端口。TCP连接的端点叫做套接字(socket)或插口。
➢ 端口号拼接到(contatenated with) IP 地址即构成了套接字。
套接字 socket = (IP地址: 端口号)
每一条 TCP 连接唯一地被通信两端的两个端点(即两个套接字)所确定。即:
TCP 连接 ::= {socket1, socket2} = {(IP1: port1), (IP2: port2)}
五、可靠传输的工作原理
1、停止等待协议

请注意:
1) 在发送完一个分组后,必须暂时保留已发送的分组的副本。
2) 分组和确认分组都必须进行编号。
3) 超时计时器的重传时间应当比数据在分组传输的平均往返时间更长一些。
可靠通信的实现:
➢ 使用上述的确认和重传机制,我们就可以在不可靠的传输网络上实现可靠的通信。
➢ 这种可靠传输协议常称为自动重传请求ARQ (Automatic Repeat reQuest)。
➢ ARQ 表明重传的请求是自动进行的。接收方不需要请求发送方重传某个出错的分组 。
2、流水线传输
➢ 发送方可连续发送多个分组,不必每发完一个分组就停顿下来等待对方的确认。
➢ 由于信道上一直有数据不间断地传送,这种传输方式可获得很高的信道利用率。

六、TCP 的流量控制——利用滑动窗口实现
流量控制(flow control)就是让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞。
利用滑动窗口机制可以很方便地在 TCP 连接上实现流量控制。
七、 TCP 的运输连接管理
1、运输连接的三个阶段
运输连接就有三个阶段,即:连接建立、数据传送和连接释放。运输连接的管理就是使运输连接的建立和释放都能正常地进行。
连接建立过程中要解决以下三个问题:
➢ 要使每一方能够确知对方的存在。
➢ 要允许双方协商一些参数(如最大报文段长度,最大窗口大小,服务质量等)。
➢ 能够对运输实体资源(如缓存大小,连接表中的项目等)进行分配。
TCP 连接的建立都是采用客户服务器方式。
2.TCP 的连接建立——用三次握手建立TCP链接

3、连接的释放
数据传输结束后,双方都可释放连接,但一方(设为A)释放连接前需获得另一方(设为B)的允许,如果此时B方仍有数据要传输,则连接不得释放,A仍要接收B的数据,直至B方数据传输完毕后,B方发出释放连接的要求,得到A方的许可确认后,B释放连接,A等待2MSL后释放连接,此时通信结束。

第六章 应用层

一、应用层协议的特点
➢ 每个应用层协议都是为了解决某一类应用问题,而问题的解决又往往是通过位于不同主机中的多个应用进程之间的通信和协同工作来完成的。应用层的具体内容就是规定应用进程在通信时所遵循的协议。
➢ 应用层的许多协议都是基于客户服务器方式。
二、域名系统 DNS
➢ 计算机的用户只是间接而不是直接使用域名系统。
➢ 因特网采用层次结构的命名树作为主机的名字,并使用分布式的域名系统 DNS。
➢ 名字到 IP 地址的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器。
三、层次树状结构的命名方法
➢ 任何一个连接在因特网上的主机或路由器,都有一个唯一的层次结构的名字,即域名。
➢ 域名的结构由标号序列组成,各标号之间用点隔开:
… . 三级域名 . 二级域名 . 顶级域名
四、域名只是个逻辑概念
➢ 域名只是个逻辑概念,并不代表计算机所在的物理地点。
➢ 变长的域名和使用有助记忆的字符串,是为了便于人来使用。而 IP 地址是定长的 32 位二进制数字则非常便于机器进行处理。
五、顶级域名 TLD(Top Level Domain)
(1) 国家顶级域名 nTLD:如: .cn 表示中国,.us 表示美国,.uk 表示英国,等等。
(2) 通用顶级域名 gTLD:最早的顶级域名是:
.com (公司和企业) .net (网络服务机构)
.org (非赢利性组织) .edu (美国专用的教育机构()
.gov (美国专用的政府部门) .mil (美国专用的军事部门)
.int (国际组织)
六、域名服务器的四种类型
➢ 根域名服务器
 根域名服务器是最重要的域名服务器。所有的根域名服务器都知道所有的顶级域名服务器的域名和 IP 地址。
 不管是哪一个本地域名服务器,若要对因特网上任何一个域名进行解析,只要自己无法解析,就首先求助于根域名服务器。
 在因特网上共有13 个不同 IP 地址的根域名服务器(注意这里的13是指共有13 套装置,而不是 13 个机器),它们的名字是用一个英文字母命名,从a 一直到 m(前13 个字母)。这些 根域名服务器相应的域名分别是
 a.rootservers.net
 b.rootservers.net
 …
 m.rootservers.net
到 2006 年底全世界已经安装了一百多个根域名服务器机器,分布在世界各地。
➢ 顶级域名服务器
 这些域名服务器负责管理在该顶级域名服务器注册的所有二级域名。
 当收到 DNS 查询请求时,就给出相应的回答(可能是最后的结果,也可能是下一步应当找的域名服务器的 IP 地址)。
➢ 权限域名服务器
 负责一个区的域名服务器。
 当一个权限域名服务器还不能给出最后的查询回答时,就会告诉发出查询请求的 DNS 客户,下一步应当找哪一个权限域名服务器。
➢ 本地域名服务器
 本地域名服务器对域名系统非常重要。
 当一个主机发出 DNS 查询请求时,这个查询请求报文就发送给本地域名服务器。
 每一个因特网服务提供者 ISP,或一个大学,甚至一个大学里的系,都可以拥有一个本地域名服务器,
 这种域名服务器有时也称为默认域名服务器。
七、域名的解析过程
主机向本地域名服务器的查询一般都是采用递归查询。如果主机所询问的本地域名服务器不知道被查询域名的 IP 地址,那么本地域名服务器就以 DNS 客户的身份,向其他根域名服务器继续发出查询请求报文。
本地域名服务器向根域名服务器的查询通常是采用迭代查询。当根域名服务器收到本地域名服务器的迭代查询请求报文时,要么给出所要查询的 IP 地址,要么告诉本地域名服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地域名服务器进行后续的查询。
以上两种方式如下图所示:

八、文件传送协议FTP 特点
➢ 文件传送协议 FTP 只提供文件传送的一些基本的服务,它使用 TCP 可靠的运输服务。
➢ FTP 的主要功能是减少或消除在不同操作系统下处理文件的不兼容性。
➢ FTP 使用客户服务器方式。一个 FTP 服务器进程可同时为多个客户进程提供服务。FTP 的服务器进程由两大部分组成:一个主进程,负责接受新的请求;另外有若干个从属进程,负责处理单个请求。
两个连接

 控制连接在整个会话期间一直保持打开,FTP 客户发出的传送请求通过控制连接发送给服务器端的控制进程,但控制连接不用来传送文件。
 实际用于传输文件的是“数据连接”。服务器端的控制进程在接收到 FTP 客户发送来的文件传输请求后就创建“数据传送进程”和“数据连接”,用来连接客户端和服务器端的数据传送进程。
 数据传送进程实际完成文件的传送,在传送完毕后关闭“数据传送连接”并结束运行。
两个不同的端口号
当客户进程向服务器进程发出建立连接请求时,要寻找连接服务器进程的熟知端口(21),同时还要告诉服务器进程自己的另一个端口号码,用于建立数据传送连接。
接着,服务器进程用自己传送数据的熟知端口(20)与客户进程所提供的端口号码建立数据传送连接。
由于 FTP 使用了两个不同的端口号,所以数据连接与控制连接不会发生混乱。20号端口、21号端口

九、万维网的文档
HTML 文档是一种可以用任何文本编辑器创建的 ASCII 码文件。
万维网的文档可以分为以下3类:
➢ 静态文档是指该文档创作完毕后就存放在万维网服务器中,在被用户浏览的过程中,内容不会改变。
➢ 动态文档是指文档的内容是在浏览器访问万维网服务器时才由应用程序动态创建。
动态文档和静态文档之间的主要差别体现在服务器一端。这主要是文档内容的生成方法不同。而从浏览器的角度看,这两种文档并没有区别。
十、两种不同的链接
➢ 远程链接:超链的终点是其他网点上的页面。
➢ 本地链接:超链指向本计算机中的某个文件。
十一、 电子邮件
➢ 发送邮件的协议:SMTP
➢ 读取邮件的协议:POP3 和 IMAP
➢ MIME 在其邮件首部中说明了邮件的数据类型(如文本、声音、图像、视像等),使用 MIME可在邮件中同时传送多种类型的数据。
➢ 电子邮件的最主要的组成构件:用户代理、发送端邮件服务器、接收端邮件服务器。
 用户代理 UA 就是用户与电子邮件系统的接口,是电子邮件客户端软件。
十二、简单邮件传送协议 SMTP
➢ SMTP 所规定的就是在两个相互通信的 SMTP 进程之间应如何交换信息。
➢ 由于 SMTP 使用客户服务器方式,因此负责发送邮件的 SMTP 进程就是 SMTP 客户,而负责接收邮件的 SMTP 进程就是 SMTP 服务器。
十三、SMTP 通信的三个阶段
连接建立、邮件传送、连接释放。
十四、邮件读取协议POP3 和 IMAP
邮局协议 POP(Post Office Protocol) 是一个非常简单、但功能有限的邮件读取协议,现在使用的是它的第三个版本 POP3。
POP 也使用客户服务器的工作方式。
在接收邮件的用户 PC 机中必须运行 POP 客户程序,而在用户所连接的 ISP 的邮件服务器中则运行 POP 服务器程序。
因特网报文存取协议IMAP(Internet Message Access Protocol)也是按客户服务器方式工作,现在较新的是版本 4,即 IMAP4。
用户在自己的 PC 机上就可以操纵 ISP(Internet Service Provider) 的邮件服务器的邮箱,就像在本地操纵一样。
因此 IMAP 是一个联机协议。当用户 PC 机上的 IMAP 客户程序打开 IMAP 服务器的邮箱时,用户就可看到邮件的首部。若用户需要打开某个邮件,则该邮件才传到用户的计算机上。
十五、发送和接收电子邮件的几个重要步骤

1) 发件人调用 PC 机中的用户代理撰写和编辑要发送的邮件。
2)  发件人的用户代理把邮件用 SMTP 协议发给发送方邮件服务器,
3)  SMTP 服务器把邮件临时存放在邮件缓存队列中,等待发送。
4)  发送方邮件服务器的 SMTP 客户与接收方邮件服务器的 SMTP 服务器建立 TCP 连接,然后就把邮件缓存队列中的邮件依次发送出去。
5)  运行在接收方邮件服务器中的SMTP服务器进 程收到邮件后,把邮件放入收件人的用户邮箱中,等待收件人进行读取。
6)  收件人在打算收信时,就运行 PC机中的用户代理,使用 POP3(或 IMAP)协议读取发送给自己的邮件。
注意,POP3 服务器和 POP3 客户之间的通信是由 POP3 客户发起的。
十六、基于万维网的电子邮件
➢ 电子邮件从 A 发送到网易邮件服务器是使用 HTTP 协议。
➢ 两个邮件服务器之间的传送使用 SMTP。
➢ 邮件从新浪邮件服务器传送到 B 是使用 HTTP 协议。

十七、通用因特网邮件扩充 MIME
SMTP 有以下缺点:
1) SMTP 不能传送可执行文件或其他的二进制对象。
2) SMTP 限于传送 7 位的 ASCII 码。许多其他非英语国家的文字(如中文、俄文,甚至带重音符号的法文或德文)就无法传送。
3) SMTP 服务器会拒绝超过一定长度的邮件。
4) 某些 SMTP 的实现并没有完全按照[RFC 821]的 SMTP 标准。
MIME 的特点:
MIME 并没有改动 SMTP 或取代它。
MIME 的意图是继续使用目前的[RFC 822]格式,但增加了邮件主体的结构,并定义了传送非 ASCII 码的编码规则。
MIME 和 SMTP 的关系

十八、应用进程跨越网络的通信
1、系统调用
大多数操作系统使用系统调用(system call)的机制在应用程序和操作系统之间传递控制权。
对程序员来说,每一个系统调用和一般程序设计中的函数调用非常相似,只是系统调用是将控制权传递给了操作系统。

多个应用进程使用系统调用的机制
2、应用编程接口API(Application Programming Interface)
当某个应用进程启动系统调用时,控制权就从应用进程传递给了系统调用接口。
此接口再将控制权传递给计算机的操作系统。操作系统将此调用转给某个内部过程,并执行所请求的操作。
内部过程一旦执行完毕,控制权就又通过系统调用接口返回给应用进程。
系统调用接口实际上就是应用进程的控制权和操作系统的控制权进行转换的一个接口,即应用编程接口 API。
2.1 几种应用编程接口 API
① Berkeley UNIX 操作系统定义了一种 API,它又称为套接字接口(socket interface)。
② 微软公司在其操作系统中采用了套接字接口 API,形成了一个稍有不同的 API,并称之为 Windows Socket。
③ AT&T 为其 UNIX 系统 V 定义了一种 API,简写为 TLI (Transport Layer Interface)。
2.1.1 套接字的作用
 当应用进程需要使用网络进行通信时就发出系统调用,请求操作系统为其创建“套接字”,以便把网络通信所需要的系统资源分配给该应用进程。
 操作系统为这些资源的总和用一个叫做套接字描述符的号码来表示,并把此号码返回给应用进程。应用进程所进行的网络操作都必须使用这个号码。
 通信完毕后,应用进程通过一个关闭套接字的系统调用通知操作系统回收与该“号码”相关的所有资源。

第七章 网络安全

一、计算机网络面临的安全性威胁
计算机网络上的通信面临以下的四种威胁:
(1) 截获——从网络上窃听他人的通信内容。
(2) 中断——有意中断他人在网络上的通信。
(3) 篡改——故意篡改网络上传送的报文。
(4) 伪造——伪造信息在网络上传送。
截获信息的攻击称为被动攻击,而更改信息和拒绝用户使用资源的攻击称为主动攻击。

二、被动攻击和主动攻击
被动攻击 ——攻击者只是观察和分析某一个协议数据单元 PDU 而不干扰信息流。
主动攻击 —— 是指攻击者对某个连接中通过的 PDU 进行各种处理,如:
➢ 更改报文流
➢ 拒绝报文服务
➢ 伪造连接初始化
三、、恶意程序(rogue program)
(1) 计算机病毒——会“传染”其他程序的程序,“传染”是通过修改其他程序来把自身或其变种复制 进去完成的。
(2) 计算机蠕虫——通过网络的通信功能将自身从一个结点发送到另一个结点并启动运行的程序。
(3) 特洛伊木马——一种程序,它执行的功能超出所声称的功能。
(4) 逻辑炸弹——一种当运行环境满足某种特定条件时执行其他特殊功能的程序。
四、计算机网络安全的内容
➢ 保密性
➢ 安全协议的设计
➢ 访问控制
五、公钥密码体制
公钥密码体制使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。
1、公钥和私钥
在公钥密码体制中,加密密钥(即公钥) PK(Public Key) 是公开信息,而解密密钥(即私钥或秘钥) SK(Secret Key) 是需要保密的。
加密算法 E(Encrypt) 和解密算法 D 也都是公开的。
虽然秘钥 SK 是由公钥 PK 决定的,但却不能根据 PK 计算出 SK。
2、公钥算法的特点
➢ 发送者 A 用 B 的公钥 PKB 对明文 X 加密(E 运算)后,在接收者 B 用自己的私钥 SKB 解密(D 运算),即可恢复出明文:

➢ 解密密钥是接收者专用的秘钥,对其他人都保密。
➢ 加密密钥是公开的,但不能用它来解密,即

➢ 加密和解密的运算可以对调,即

➢ 在计算机上可容易地产生成对的 PK 和 SK。
➢ 从已知的 PK 实际上不可能推导出 SK,即从 PK 到 SK 是“计算上不可能的”。
➢ 加密和解密算法都是公开的。
六、 数字签名
数字签名必须保证以下三点:
(1) 报文鉴别——接收者能够核实发送者对报文的签名;
(2) 报文的完整性——发送者事后不能抵赖对报文的签名;
(3) 不可否认——接收者不能伪造对报文的签名。
现在已有多种实现各种数字签名的方法。但采用公钥算法更容易实现。
数字签名的实现 :

➢ 因为除 A 外没有别人能具有 A 的私钥,所以除 A 外没有别人能产生这个密文。因此 B 相信报文 X 是 A 签名发送的。
➢ 若 A 要抵赖曾发送报文给 B,B 可将明文和对应的密文出示给第三者。第三者很容易用 A 的公钥去证实 A 确实发送 X 给 B。
➢ 反之,若 B 将 X 伪造成 X‘,则 B 不能在第三者前出示对应的密文。这样就证明了 B 伪造了报文。

具有保密性的数字签名
七、鉴别
在信息的安全领域中,对付被动攻击的重要措施是加密,而对付主动攻击中的篡改和伪造则要用鉴别(authentication) 。
报文鉴别使得通信的接收方能够验证所收到的报文(发送者和报文内容、发送时间、序列等)的真伪。
使用加密就可达到报文鉴别的目的。但在网络的应用中,许多报文并不需要加密。应当使接收者能用很简单的方法鉴别报文的真伪。
1、鉴别的手段
1)报文鉴别(使用报文摘要 MD (Message Digest)算法与数字签名相结合)
2)实体鉴别
八、防火墙(firewall)
➢ 防火墙是由软件、硬件构成的系统,是一种特殊编程的路由器,用来在两个网络之间实施接入控制策略。接入控制策略是由使用防火墙的单位自行制订的,为的是可以最适合本单位的需要。
➢ 防火墙内的网络称为“可信赖的网络”(trusted network),而将外部的因特网称为“不可信赖的网络”(untrusted network)。
➢ 防火墙可用来解决内联网和外联网的安全问题。

防火墙在互连网络中的位置
1、防火墙的功能
防火墙的功能有两个:阻止和允许。
“阻止”就是阻止某种类型的通信量通过防火墙(从外部网络到内部网络,或反过来)。
“允许”的功能与“阻止”恰好相反。
防火墙必须能够识别通信量的各种类型。不过在大多数情况下防火墙的主要功能是“阻止”。
2、防火墙技术的分类
(1) 网络级防火墙——用来防止整个网络出现外来非法的入侵。属于这类的有分组过滤和授权服务器。前者检查所有流入本网络的信息,然后拒绝不符合事先制订好的一套准则的数据,而后者则是检查用户的登录是否合法。
(2) 应用级防火墙——从应用程序来进行接入控制。通常使用应用网关或代理服务器来区分各种应用。例如,可以只允许通过访问万维网的应用,而阻止 FTP 应用的通过。

第八章 无线局域网

一、无线局域网的组成
1、有固定基础设施的无线局域网
2、无固定基础设施的无线局域网
二、热点(hot spot)
现在许多地方,如办公室、机场、快餐店、旅馆、购物中心等都能够向公众提供有偿或无偿接入 Wi-Fi 的服务。这样的地点就叫做热点。
三、移动自组网络,又称自组网络(ad hoc network)
自组网络是没有固定基础设施(即没有 AP)的无线局域网。这种网络由一些处于平等状态的移动站之间相互通信组成的临时网络:

四、802.11 局域网的 MAC 帧
802.11 帧共有三种类型,即控制帧、数据帧和管理帧。
CSMA/CA协议
~~~~~~~~~~~~~~~~&&&&&&&&&&&&&&&&&&&&&&&&&&~~~~~~~~

第九章 下一代因特网

一、IPv6 的基本首部
➢ 更大的地址空间。IPv6 将地址从 IPv4 的 32 位 增大到了 128 位。
➢ IPv6 将首部长度变为固定的 40 字节,称为基本首部(base header)。
➢ 将不必要的功能取消了,首部的字段数减少到只有 8 个。
➢ 取消了首部的检验和字段,加快了路由器处理数据报的速度。
➢ 在基本首部的后面允许有零个或多个扩展首部。
➢ 所有的扩展首部和数据合起来叫做数据报的有效载荷(payload)或净负荷。

二、 从 IPv4 向 IPv6 过渡
➢ 向 IPv6 过渡只能采用逐步演进的办法,同时,还必须使新安装的 IPv6 系统能够向后兼容。
➢ IPv6 系统必须能够接收和转发 IPv4 分组,并且能够为 IPv4 分组选择路由。
➢ 双协议栈(dual stack)是指在完全过渡到 IPv6 之前,使一部分主机(或路由器)装有两个协议栈,一个 IPv4 和一个 IPv6。

已标记关键词 清除标记
相关推荐
简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!此时此景,笔者只专注Android、Iphone等移动平台开发,看着这些源码心中有万分感慨,写此文章纪念那时那景! Java 源码包 Applet钢琴模拟程序java源码 2个目标文件,提供基本的音乐编辑功能。编辑音乐软件的朋友,这款实例会对你有所帮助。 Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除,从账户中取出amt,如果amt>账户余额抛出异常,一个实体Bean可以表示不同的数据实例,我们应该通过主键来判断删除哪个数据实例…… ejbCreate函数用于初始化一个EJB实例 5个目标文件,演示Address EJB的实现 ,创建一个EJB测试客户端,得到名字上下文,查询jndi名,通过强制转型得到Home接口,getInitialContext()函数返回一个经过初始化的上下文,用client的getHome()函数调用Home接口函数得到远程接口的引用,用远程接口的引用访问EJB。 EJB中JNDI的使用源码例子 1个目标文件,JNDI的使用例子,有源代码,可以下载参考,JNDI的使用,初始化Context,它是连接JNDI树的起始点,查找你要的对象,打印找到的对象,关闭Context…… ftp文件传输 2个目标文件,FTP的目标是:(1)提高文件的共享性(计算机程序和/或数据),(2)鼓励间接地(通过程序)使用远程计算机,(3)保护用户因主机之间的文件存储系统导致的变化,(4)为了可靠和高效地传输,虽然用户可以在终端上直接地使用它,但是它的主要作用是供程序使用的。本规范尝试满足大型主机、微型主机、个人工作站、和TACs 的不同需求。例如,容易实现协议的设计。 Java EJB中有、无状态SessionBean的两个例子 两个例子,无状态SessionBean可会话Bean必须实现SessionBean,获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,计算利息等;在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天通信演示代码 2个目标文件,一个服务器,一个客户端。 Java Telnet客户端实例源码 一个目标文件,演示Socket的使用。 Java 组播组中发送和接受数据实例 3个目标文件。 Java读写文本文件的示例代码 1个目标文件。 java俄罗斯方块 一个目标文件。 Java非对称加密源码实例 1个目标文件 摘要:Java源码,算法相关,非对称加密   Java非对称加密源程序代码实例,本例中使用RSA加密技术,定义加密算法可用 DES,DESede,Blowfish等。   设定字符串为“张三,你好,我是李四”   产生张三的密钥对(keyPairZhang)   张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节   通过网络或磁盘等方式,把公钥编码传送给李四,李四接收到张三编码后的公钥,将其解码,李四用张三的公钥加密信息,并发送给李四,张三用自己的私钥解密从李四处收到的信息…… Java利用DES私钥对称加密代码实例 同上 java聊天室 2个目标文件,简单。 java模拟掷骰子2个 1个目标文件,输出演示。 java凭图游戏 一个目标文件,简单。 java求一个整数的因子 如题。 Java生成密钥的实例 1个目标文件 摘要:Java源码,算法相关,密钥   Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,通常应对私钥加密后再保存、如何从文件中得到公钥编码的字节数组、如何从字节数组解码公钥。 Java数据压缩与传输实例 1个目标文件 摘要:Java源码,文件操作,数据压缩,文件传输   Java数据压缩与传输实例,可以学习一下实例化套按字、得到文件输入流、压缩输入流、文件输出流、实例化缓冲
©️2020 CSDN 皮肤主题: 酷酷鲨 设计师:CSDN官方博客 返回首页
实付 9.90元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值