1.1

计算机网络在信息时代的作用

三网: 电信网络,有线电视网络,计算机网络

计算机网络的重要功能:

1) 连通性 彼此连通,交换信息

2) 共享 信息共享,软硬件共享

1.2

因特网概述

我们先给出关于网络,互联网,因特网的一些最基本概念.

网络:许多计算机连接在一起

互联网:internet 许多网络连接在一起

因特网:Internet 全球最大的,开放的,有众多网络相互连接而成的计算机

网络(一个互联网),其采用TCP/IP协议。

因特网发展的三个阶段:

1. 单个网络ARPANET向互联网发展的过程.1983年,TCP/IP协议成为ARPANET上的标准协议.人们把1983年看成是现在因特网的诞生时间.

2. 三级结构的因特网.分为主干网,地区网,校园网(企业网).

3. 多层次ISP结构的因特网.ISP称为因特网服务提供商.

(2) 传播时延 是电磁波在信道中传播一定的距离需要发费的时间

计算机网络学习一对一教程(计算机网络谢希仁)(1)

(3)处理时延 主机或路由器在收到分组是要花费一定的时间进行处理,例如分析分组的首部,从分组中提取数据部分.

(4)排队时延 分组在经过网络传输时,要经过许多路由器.但分组在进入路由器后要先在输入队列中等待处理.在路由器确定了转发接口后,还要在输出队列中排队等待转发.这就产生了排队延时.

5、时延带宽积

时延带宽积=传播时延×带宽

表示这样的链路可容纳多少个比特.又称以比特为单位的链路长度

6、往返时间RTT

表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间.

7、利用率

计算机网络学习一对一教程(计算机网络谢希仁)(2)

1.6

计算机网络体系结构

开放系统信息交换涉及的几个概念:

实体(entry): 交换信息的硬件或软件进程

协议(protrocol): 控制两个对等实体通信的规则

服务(service): 下层向上层提供服务,上层需要下层提供的服务来实现本层功能

服务访问点(SAP): 相邻两层实体间交换信息的地方

开发系统胡来年基本参考模型OSI/RM(Open Systems Interconnection Reference Model) 七层

应用层 能够产生流量能够和用户交互的应用程序

表示层 加密 压缩 开发人员

会话层 服务和客户端建立的会话 查木马 netstat –nb

传输层 可靠传输(要建立回话的) 不可靠传输 流量控制

网络层 IP地址编址 选择最佳路径

数据链路层 输入如何封装 添加物理层地址 MAC

物理层 电压 接口标准

网络排错 从底层到高层

网络安全和OSI参考模型

物理层安全

数据链路层安全 ADSL

网络层安全

应用层安全 SQL注入漏洞 上传漏洞

TCP/IP四层模型

应用层 运输层(TCP或UDP) 网际层IP 网络接口层

综合OSI和TCP/IP的优点,采用一种五层协议的体系结构

应用层 应用层(传输数据单元PDU)

运输层 运输层报文

网络层 IP数据报(IP分组)

数据链路层 数据帧

物理层 001010101010000110101

2.1

物理层的基本概念

物理层解决如何在连接各种计算机的传输媒体上数据比特流,而不指具体的传输媒体.

可以将物理层的主要任务描述为确定与传输媒体的接口有关的一些特性.

机械特性 接口形状,尺寸,引脚数目和排列

2.2

数据通信的基础知识

一个数据通信系统可划为三大部分: 原系统(或发送端,发送方) 传输系统(传输网络) 目的系统(接收端,接收方)

相关术语

通信的目的是传送消息.

数据(data)——运送消息的实体

信号(signal)——数据二等电气的或电磁的表现

“模拟信号”——代表消息的参数的取值是连续的

“数字信号”——代表消息的参数的取值是离散的

码元(code)——在使用时间域的波形表示数字信号时,则代表不同

离散数值的基本波形就形成码元

有关信道的几个基本概念

信道一般表示一个方向传送信息的媒体。所以我们说平常的信道线路往往包含一条发送信息的信道和一条接收信息的信道

单向通信(单工通信)——只能有一个方向的信号没有反方向的交互

双向交替通信(半双工通信)——通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)

双向同时通信(全双工通信)——通信的双方可以同时发送和接收信息

基带型号和带通信号

基带信号(即基本频带信号)——来自信号源的信号,像计算机输出的代表各种文字图像文件的数据信号都属于基带型号。基带信号就是发出来的直接表达了要传输信息的信号,比如我们说话的声波就是基带信号。

带通信号——把基带信号经过载波调制后,把信号频率范围搬移到较高的频段以便在信道中传输(即仅在一段频率范围内能够通过信道)

信道的极限容量

奈氏准则:其给出了在假定的立项条件下,为了避免码间串扰,码元的传输速率的上限值在任何信道中,码元传输的速率是有上限的,传输速率超过此上限,都会出现严重的码间串扰问题,使接收端对码元的识别成为不可能

信噪比

信噪比就是信号的平均功率和噪声的平均功率之比,记为S/N.

香农公式指出:信道的极限信息传输速率C是

计算机网络学习一对一教程(计算机网络谢希仁)(3)

式中,W为信道的带宽(以Hz为单位);

S为信道内所传信号的平均功率

N为信道内部的高斯噪声功率

香农公式表名,信道的带宽或信道中的信噪比越大,信息的极限传输速率就越高.

香农公式的意义在于:只要信息传输速率低于信道的极限传输速率,就一定可以找到某种方法来实现无差错的传输

若信道带宽W或信噪比S/N没有上限(当然实际不可能这样),则信道的极限信息传输速率C也就没有上限

实际信道上能够达到的信息传输速率要比香农公式的极限传输速率低不少.

2.3

物理层下面的传输媒体

导向传输媒体 导向传输媒体中,电磁波沿着固体媒体传播

双绞线

屏蔽双绞线STP

无屏蔽双绞线UTP

同轴电缆

50Ω同轴电缆 由于数字传输,多用于基带传输

75Ω同轴电缆 用于模拟传输,即宽带同轴电缆

光纤

非导向传输媒体 就是指自由空间,其中的电磁波传输被称为无线传输 无线传输所使用的频段很广

短波通讯主要是靠电离层的反射,但短波信道的通信质量较差

微波在空间主要是直线传播 地面微波接力传播 卫星通信

2.4

信道复用技术

频分复用,时分复用,统计时分复用

频分复用

在分配到一定的频率后,在通信过程中自始至终都占用这个频带.

频分复用的所用用户在同样的时间占用不同的带宽资源(这里的带宽指的是频率带宽而不是数据的发送频率)

时分复用

是将时间划分为一段段等长的时分复用帧.每一个时分复用的用户在每一个TDM帧占用固定的时隙.

时分复用的所有用户是在不同的时间占用同样的频带宽度.

统计时分复用

是一种改进的时分复用,他能明显地提高信道的利用率,

波分复用1

就是光的频分复用.

码分复用 CDM

是另一种共享信道的方法,实际上更常用的是码分多址CDMA.每个用户可以在同样的时间使用同样的频带进行通信.由于个用户使用经过特殊挑选的不同码型,因此各用户之间不会造成干扰.

在CDMA中,每一个比特时间在划分为m个短时间,称为码片.

CDMA系统的一个重要特点就是这种体制给每一个站分配的码片序列不仅必须相同,且还必须正交.

3.1

数据链路层

数据链路层使用的信道主要有以下两种类型:

(1) 点对点信道. 这种信道使用一对一的点对点通信方式

(2) 广播通信. 这种信道使用一对多的广播通信方式.

链路与数据链路

链路(link)是一条点到点的物理路段,中间没有其他任何点.

 一条链路只是一条通路的一个组成部分

数据链路(data link)除了物理线路外,还必须有通信协议来控制这些数据的传输.若把实现这些协议的硬件和软件加到链路上,就构成了数据链路.

 现最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件

 一般的适配器都包括了数据链路层和物理层这两层功能.

下面介绍点对点信道的数据链层协议数据单元——帧.

数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧中的数据取出上交给网络层.在因特网中,网络协议数据单元就是IP数据报(简称数据报,分组或包)

数据链路层的三个基本问题

1. 封装成帧(framing)

就是在一段数据的前后分别添加首部和尾部,这样就构成了一个帧,确定帧的界限.

我们知道:所有在因特网上传送的数据都是以分组(即IP数据报)为传送单位的,网络层饿IP数据传送到数据链路层就成为帧的数据部分.帧的数据部分的前面和后面分别添加上首部和尾部,就构成了一个完整的帧.这样的帧就是数据链路层的数据传输单元.

首部和尾部的一个重要作用就是进行帧定界

2. 透明传输

由于帧的开始和结束的标记是使用专门指明的控制字符,因此,所传输的数据中的任何8比特的组合一定不允许和用作帧定界的控制字符的比特编码一样,否则就会出现帧定界错误.

数据链路层对这些数据来说是透明的:表示无论什么样的比特组合的数据都能够通过数据链路层.

3. 差错检测

在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率(BER)

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施.目前在数据链路层广泛使用了循环冗余检验CRC的检测技术.

仅用循环冗余检验CRC差错检测技术只能做到无差错接受,即近似地认为:”反是接收端数据链路层接受的帧均无差错”

3.2

点对点协议PPP

PPP协议就是用户计算机和ISP进行通信时所使用的数据链路层协议.

PPP协议的组成:

(1) 一个将IP数据报封装到串行链路的方法.

(2) 一个用来建立,配置和测试数据链路连接的链路控制协议LCP

(3) 一套网络控制协议NCP,其中每一个协议支持不同的网络层协议,如IP,OSI的网络层,DECnet,以及AppleTalk等.

PPP协议的帧格式

3.3

使用广播信道的数据链路层

局域网最主要特点是:网络为一个单位所有拥有,且地理范围和结点数目均有限.

局域网具有如下的一些主要优点:

 具有广播功能,从一个站点点可很方便地访问全网.局域网上的主机可共享连接在局域网上的各种硬件和软件资源.

 便于系统的扩展和逐渐地演变,各设备的位置灵活调整和改变

 提高了系统的可靠,可用性好生存性.

为了使数据链路层能够更好地适应多种局域网标准,IEEE 802 委员会就把局域网的数据链路层拆成两个子层,即逻辑链路控制层LLC子层和媒体接入层(MAC)子层.与接入到传输媒体有关的内容都放在MAC子层,LLC子层则与传输媒体无关,不管采用何种传输媒体和MAC子层的局域网对LLC子层来说都是透明的.

CDSMA/CD协议

最早的以太网是将许多计算机都连接到一根总线上.当初认为这样的连接方法既简单有可靠,因为总线上没有有源器件.

总线的特点:当一台计算机发送数据时,总线上的所有计算机都能检测到这个数据.这就是广播通信方式.为了在总线上实现一对一的通信,可以使买一台计算机拥有一个与其他适配器都不同的地址.

以太网使用的协议是CSMA/CD,意思是载波监听多点接入碰撞检测

“多点接入”表示许多计算机以多点接入的方式连接在一根总线上

“载波监听”每一个站在发送数据之前先要检测一个总线上是否有其他计算机在没发送数据,如果有,则暂时不要发送数据,以免发生碰撞.就是用电子技术检测总线上有没有其他计算机发送的数据信号.

“碰撞检测”就是计算机边发送数据边检查信道上的信号电压变化情况

争用期

最先发送数据的站,在发送数据帧后之多经历2τ(两倍的端到端往返传播时延)就可以知道发送的数据帧是否遭到了碰撞

经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发送碰撞.

以太网的争用期

 以太网的端到端往返时间时延2τ称为争用期,或碰撞窗口.通常,取51.2微秒为争用期的长度.

 对于10Mb/s以太网,在争用期内可发送512bit,即64字节.

 以太网在发送数据时,若前64字节未发生冲突,则后续的数据就不会发送冲突.

最短有效帧长

 由于一检测到冲突就立即终止发送,这时已经发送出去的数据一定小于64字节.

 以太网规定了最短有效帧长为64字节,凡长度小于64字节的帧都是由于冲突而异常终止的无效帧.

二进制指数类型退避算法

发生碰撞的站在停止发送数据后,要推迟(退避)一个随机时间在发送数据.

 确定基本退避时间,一般是取争用期2τ

 定义参数k

K=Min[重传次数,10]

 从整数集合[0,1,…,(2k-1)]中随机地取一个数,记为r.重传所需的时延就是r倍的基本退避时间

 当重传16次仍不能成功时即丢弃该帧,并向高层报告.

3.4

以太网

以太网的两个标准

DIX Ethernet V2是世界上第一个局域网产品(以太网)的规定

IEEE 的 802.3标准.

以太网与数据链路层的两个子层

为了使数据链路层能够更好地适应多种局域网标准,IEEE 802 委员会就把局域网的数据链路层拆成两个子层,

即逻辑链路控制层LLC子层和媒体接入层MAC子层.

与接入到传输媒体有关的内容都放在MAC子层,LLC子层则与传输媒体无关,不管采用何种传输媒体和MAC子层的局域网对LLC子层来说都是透明的.

以太网提供的服务

以太网提供的服务是不可靠的交付,基金最大努力的交付.

当接收站收到有差错的数据帧时就丢弃此帧,其他什么也不做.差错的纠正由高层决定.

如果高层发现丢失了一些数据而进行重传,但以太网并不知道这是一个重传的帧,而是当作一个新的数据帧来发送.

MAC层的硬件地址

局域网中,硬件地址又称物理地址,或MAC地址

3.5

扩展以太网

在数据链路层扩展以太网要使用网桥.网桥工作在数据链路层,它根据,MAC帧的目的地址对收到的帧进行转发和过滤.当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查次真的目的MAC地址,然后再确定将该帧转发到哪一个接口,或者把它丢弃(即过滤)

使用网桥可以带来以下好处:

(1) 过滤通信量,增加吞吐量

(2) 扩大了物理范围

(3) 提高了可靠性

(4) 可互联不同的物理层,不同MAC子层和不同速率

透明网桥

透明是指以太网上的站点并不知道所发送的帧将经过哪几个网桥,以太网上的站点都看不见以太网上的网桥.

4.1

网络层提供两种服务

网络层关注的是如何将分组从源端沿着网络路径送达目的地.

在计算机网络领域,网络层应该向运输层提供怎样的服务(“面向连接”还是”无连接”)曾引起了长期的争论.

争论点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络层还是端系统?

两种服务:网络层应该向运输层提供怎样的服务?

 虚电路服务

 数据报服务

虚电路:

虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接存储转发方式传送,而并不是真正建立了一条物理连接.

请注意,电路交换的电话通信是先建立了一条真正的连接.因此分组交换的虚连接只是类似,但并不完全一样.

数据报服务

网络层向上只提供简单灵活的,无连接的,尽量大努力交付的数据报服务.(虽然并不表示路由器可以任意丢弃分组,但在网络层上的这种交付实质上就是不可靠交付.)

网络在发送分组时不需要先建立连接.每一个分组(即IP数据报)独立发送,与其前后的分组无关(不进行编号)

网络层不提供服务质量承诺.即所传送的分组可能出错,丢失,重复和失序(既不按序到达终点)当然也不保证分组交付的时限

4.2

网际协议

网络互连的设备

中间设备又称为中间系统或中继系统

 物理层中继系统:转发器

 数据链路层中继系统:网桥或桥接器

 网络层中继系统:路由器

 网络层以上的中继系统:网关

IP协议简介

网际协议IP是TCP/IP体系中两个最主要的协议之一.与IP协议配套使用的还有四个协议:

网络地址

网络地址(也可以称为网络号)唯一指定了每个网络.同一网络中的每台计算机都共享相同的网络地址,并用它作为自己IP地址的一部分

IP地址

整个因特网就是一个单一的,抽象的网络.IP地址就是给因特网上的每一个主机(或路由器)的每一个接口分配一个在全世界范围是唯一的32位标识.IP地址的结构使我们能够在因特网上很方便地进行寻址查询

分类的IP地址,由网络号和主机号---常用的三种类别的IP地址

注意:主机部分不能全为0(从1开始)也不能全为1(二进制下,如果在子网掩码划到64时,其实连63是用来广播的,是不能用的)

计算机网络学习一对一教程(计算机网络谢希仁)(4)

特殊的几个地址

127.0.0.1 本地环回地址

169.254.0.0 Windows自己给自己配的地址

保留的私网地址(在互联网上没有给服务器来用,可以给企业,政府,学校来用)

10.0.0.0 (每一个学校都可以用10网段,因为学校与学校之间也并不打算通信)

172.16.0.0 ----- 172.31.0.0

192.168.0.0 ---- 192.168.255.0

子网掩码(subnet mask)的作用

又叫网络掩码,地址掩码,它是一种用来指明一个IP地址的哪些位标识的主机所在的子网以及哪些是主机的位掩码.

子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分

假如一台计算机的IP地址配置为172.16.122.204,子网掩码为255.255.0.0,将其IP地址和子网掩码都写成二进制,进行与运算.这样经过IP地址和子网掩码做完与运算后主机位不管是什么值都归零,网络位的值保持不变,这样就得到该计算机所处的网段为172.16.0.0

得到计算机所处网段和目标地址是不是在一个网段,如果是的话,计算机就想直接解析对方计算机MAC地址(即把数据报给发过去),如果不一样,就把数据包发给路由器.

子网划分

子网掩码不一定要用255,也可以用其他的数字,如C类网络中等分成两个子网时,可用子网掩码:255.255.255.128

再比如,你只想将2台电脑进行合理分配,那么将子网掩码就要写到252去

练习:

192.168.80.249

255.255.255.224 其网段在224这个网段

计算机网络学习一对一教程(计算机网络谢希仁)(5)

172.16.0.0将这个B类网等分成两个子网:

255.255.0.0—255.255.128.0

172.16.0.1---172.16.127.254

172.16.128.1—172.16.255.254

超网

如何让两个子网的计算机划分在一个网段呢?

如图所示,将192.168.0.0和192.168.1.0两个C类网络合并.将IP地址第3个字节和4字节写二进制,可以看到将子网掩码往左移动1位,网络部分就一样了,这两个网段就在一个网断了

合并两个网段

192.168.0.0 255.255.255.0 192.168.1.0 . 255.255.255.0

计算机网络学习一对一教程(计算机网络谢希仁)(6)

IP地址和MAC硬件地址

从层次的角度,物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址.

MAC地址决定了下一票给谁,IP地址决定终点去哪.

地址解析协议ARP

将IP地址解释成物理地址.

IP数据报

一个数据报由首部和数据两部分组成

 首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的

 在首部的固定部分的后面是一些可选字段,其长度是可变的.

下面看看抓包实验

计算机网络学习一对一教程(计算机网络谢希仁)(7)

这是数据链路层,里面有数据源MAC地址和目标MAC地址,下面是网络层

计算机网络学习一对一教程(计算机网络谢希仁)(8)

数据转发分组

数据路由 路由器在不同网段转发数据包(报)

网络通畅的条件 能去能回

沿途的路由器必须知道目标网络下一跳给哪个接口

沿途的路由器必须知道源网络下一跳给哪个接口

ICMP简介

为了提高IP数据交付成功的机会,在网际层使用了网际控制报文协议

ICMP允许主机或路由器报告差错情况和提供有关异常的报告

ICMP报文作为IP层数据报的数据,加入数据的首部,组成IP数据报发送出去

ICMP报文类型

ICMP报文的类型有两个,即ICMP差错报和IMP询问报文

ICMP报文的前4个字节是统一的格式,共有三个字段:即类型,代码和检验和.接着4个字节的内容与ICMP的类型有关.

ping命令诊断网络故障

ping(Packet Internet Grope),因特网包探索器,用于测试网络连接量的程序,Ping发送一个ICMP回声请求消息给目的地址并报告是否收到所希望的ICMP回声应答.

Ping所指的是端对端连通,通常用来作为可用性的检查,但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢.严禁ping入侵作为大多数防火墙的一个基本功能提升给用户的选择.

如果打开IE浏览器访问网站失效,可以通过ping命令测试到Internet的网络连通,可以为你排除网络故障提供线索.

动态路由协议

RIP 最早 周期性广播 30秒 跳数(最大16跳)

内部网关协议 OSPF(Open Shortest Path First)

向本治系统中所有的路由器发送信息,这使用的方法是洪泛法,

发送的信息是与本路由器相邻的所有路由器的链路状态.但这只是路由器所知道的部分信息

只有当链路状态发送变化时,路由器才用洪泛法向所有路由器发送此信息.

4.3

虚拟专用网和NAT

虚拟机专用网V P N

由于IP地址的紧缺,一个机构能购申请到的IP地址数远小于本机构所拥有的主机数,考虑到因特网并不很安全,一个机构也不需要把所有的主机接入到外部因特网.实际上,很多主机主要还是和本机构内的其他主机进行通信(例如宾馆,商场中很多用于营业管理的计算机,医院,政府中的计算机).假定一个机构内部计算机通信也采用TCP/IP,那么从原则上来讲,对于这些仅在机构内部使用的计算机就可以由本机构自行分配其IP地址.这就是说,让这些计算机仅在本机构使用有效的IP地址(本机地址),而不需要向因特网的管理机构申请全球唯一的IP地址(这种地址称为全球地址).这样可以大大节约IP地址资源.

但是,任意选择一些IP地址作为本机构内部使用的本地地址,那么在某种情况下可能引起一些麻烦.例如,有时机构内部某主机需要和因特网连接,那么这种内部使用的本地地址就有可能和因特网某个IP地址重合,这样会出现地址二义性问题.

为了解决这一问题,RFC1918指明了一些专用地址.这些地址只能用于一个机构内部通信,而不能用于和因特网上的主机通信.在因特网中的所有路由器,对目的地址是专用地址的数据报一律不进行转发。

(1) 10.0.0.0到10.255.255.255

(2) 172.16.0.0到172.31.255.255

(3) 192.168.0.0到192.168.255.255

有时一个很大的机构有许多部门分布在相距很远的一些地点,而在每个地点都有自己的专用网.假定这些分布在不同地方的专用网需要经常通信.这时,可以利用公用的因特网作为本机构个专用网之间的通信载体,这样的专用网又称为虚拟专用网V P N

5.1

运输层

应用层 http https ftp DNS SMTP PoP3 RDP

传输层 TCP UDP

网络层 IP(RIP OSPF BGP) ICMP IGMP ARP

传输层两个协议应用场景

TCP 分段 编号 流量控制 建立会话 netstat –n

UDP 一个数据包就能完成数据通信 不建立会话 多播

传输层和应用层之间的关系

运输层向它上面的应用层提供通信服务.真正进行通信的实体是在主机中的进程,是这个主机中的一个进程和另一个主机中的一个进程在交换数据.因此严格讲,两个主机进行通信就是两个主机中的应用进程互相通信.

应用层协议和服务之间的关系

服务运行后在TCP或UDP的某个端口侦听客户端请求,端口代表服务.

我安装了一个服务,他就会侦听一个端口,比如打开一个web服务,他就会侦听80端口

查看自己计算机侦听的端口 netstat –an 远程控制桌面 mstsc

三类端口

熟知端口,数值一般为 0~1023

FTP:21

TELENT:23

SWTP:25

DNS:53

HTTP:80

https:443

RDP:3389

登记端口号,数值为1024~49151

客户端口号,数组为49152~65535

01

请输入标题

TCP是面向连接的传输协议.

每一条TCP连接只能有两个端点(endpoint,一个发,一个收),每一条TCP连接只能是点对点的(一对一)

TCP提供可靠交付的服务.

TCP提供全双工通信

面向字节流

计算机网络学习一对一教程(计算机网络谢希仁)(9)

计算机网络学习一对一教程(计算机网络谢希仁)(10)

计算机网络学习一对一教程(计算机网络谢希仁)(11)

看一个抓包实验

计算机网络学习一对一教程(计算机网络谢希仁)(12)

第一个请求: 我方向目标IP发送建立会话请求,SYN=1,序号=0,确认号=0

窗口大小:32768

确认号是告诉我方计算机下一次发送是从哪一个字节开始

计算机网络学习一对一教程(计算机网络谢希仁)(13)

然后目标IP地址响应: 确认号=1,SYN=1,序号=0,窗口大小=16776960

计算机网络学习一对一教程(计算机网络谢希仁)(14)

接着我方发送信息:嗯好的,我知道你能收到(会话建立),我将发送信息(请求)

序号=1,确认号=1

计算机网络学习一对一教程(计算机网络谢希仁)(15)

TCP协议主要特点

TCP把连接作为最基本抽象

每一条连接有两个端点

TCP连接的端点不是主机,不是主机的IP地址,不是应用进程,也不是传输层的协议端口,TCP连接的端点叫做套接字(socket)

端口号拼接ip地址构成套接字

TCP如何实现可靠传输

无差错情况 超时重传 确认丢失 确认迟到

使用上述的确认和重传机制,我们就可以在不可靠传输网络上实现可靠的通信.

这种可靠传输协议常称为自动重传请求ARQ

ARQ表明重传的请求时自动进行的,接收方不需要请求发送方重传某个出错的分组

发送方可连续发送多个分组,不必每发完一个分组就停顿下来等待对方确认.由于信道一直有数据不间断的传送,这种传输方式可获得很高的信道利用率

TCP协议如何实现流量控制

TCP协议如何避免网络拥塞(拥塞控制)

出现资源拥塞的条件:对资源的需求总和>可用资源

拥塞控制是一个全局性的过程,涉及到所有的主机,所有的路由器,以及与降低网络传输性能有关的所有因素

流量控制往往只在给定的发送端和接收端之间的点对点通信量的控制,他所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收

TCP的传输连接管理

传输连接有三个阶段: 连接建立,数据传送,连接释放

TCP连接的建立都是采用客户服务器方式

主动发起连接建立的应用进程叫做客户(client)

被动等待连接建立的应用进程叫做服务器(server)

计算机网络学习一对一教程(计算机网络谢希仁)(16)

计算机网络学习一对一教程(计算机网络谢希仁)(17)

6

应用层

DNS服务的作用

负责解析域名 将域名解析成IP

什么是域名

顶级域名 com edu cn org gov

二级域名 baidu sina

域名解析测试

Ping www.baidu.com

Nslookup

安装自己的DNS服务器

1. 解析内网自己的域名

2. 降低到Internet的域名解析流量

3. 域环境

DHCP动态主机配置

静态IP地址

动态IP地址

FTP协议

FTP连接方式

控制连接:标准端口21,用于发送FTP命令信息

数据连接:标准端口20,用于上传,下载数据

数据连接的建立类型:

主动模式:服务端从20端口主动向客户端发起连接

被动模式:服务端在指定范围内的某个端口被动等待客户端发起连接.

FTP传输模式:

文本模式:ASSCII模式,以文本序列传输数据

二进制模式:Binary模式,以二进制序列传输数据

FTP服务端 如果有防火墙 需要在防火墙开21和20端口 使用主动模式进行数据连接

telnet 使用TCP的23端口

万维网

客户端程序向服务器程序发送请求,服务器程序向客户程序送回客户所要的万维网文档.在一个客户程序主窗口上显示出万维网文档称为页面(page)

万维网需要解决的问题:

(1) 怎眼标志分布在整个因特网上的万维网文档? URL

(2) 用什么样的协议来实现万维网上的各种连接? HTTP

(3) 怎样使不同作者创作的不同风格的万维网文档,都能在因特网上的各种主机上显示出来,同时使用用户清楚地知道在什么地方存在这链接? HTML

(4) 怎样才能使用户很方便地知道在什么地方存在着链接?

统一资源定位符URL 是用来表示从因特网上得到的资源位置和访问这些资源方法.URL相当于一个文件名在网络范围的扩展.因此URL是与因特网相连的机器上的任何访问对象的一个指针.由于访问不同对象所使用的协议不同,所以URL还指出读取某个对象时所使用的协议.

<协议>://<主机>:<端口>/<路径>

HTTP的报文结构

HTTP请求报文和响应报文都是由三个部分组成.这两种报文的区别就是开始行不同.

(1) 开始行,用于区别是请求报文还是响应报文.在请求报文中的开始行叫做请求行,而在响应报文中的开始行叫做状态行.在开始行的三个字段之间都可以用空格分隔开,最后的”CR”和”LF”分别表示”回车””换行”

(2) 首部行,用来说明浏览器,服务器或报文主体的一些信息.

(3) 报文实体(entity body),在请求报文中一般都不用这个字段,我在响应报文中也可能没有这个字段.

请求报文的第一行”请求行”只有三个内容,方法,请求资源的url,以及HTTP的版本.

计算机网络学习一对一教程(计算机网络谢希仁)(18)

如果您是初学者,猜您可能感兴趣的文章:

《网工必备技术命令大全》(豪华升级版上线)

,