计算机网络
计算机网络
Linux的防火墙功能是由内核实现的,iptables(称为防火墙功能的用户态)只是暴露出来给用户设定规则的,然后再将用户设定的规则传给内核的netfilter(称为防火墙功能的内核态)进行过滤
iptables(主要作用于网络层)
所在文件:
/sbin/iptables
命令格式:
iptables [-t 表名] 管理选项 [链名] [条件匹配] [-j 目标动作或跳转]
#注意:
不指定表名时,默认表示filter表
不指定链名时,默认表示该表内的所有链
除非设置规则链地缺省策略,否则需要指定匹配条件
设置规则内容:
-A:在链尾追加一条新的规则
-I:在指定的位置插入一条新的规则
-R:修改、替换指定位置或内容规则
-P:设置指定链地默认策略
列表查看规则:
-L:列表查看各条规则信息
--line-num:查看规则信息时显示规则行号
-n:以数字形式显示IP地址、端口等信息
-v:显示数据包个数、字节数等详细信息
清除规则:
-F:清空规则链内的所有规则
-D:删除指定位置或内容的规则
通用条件匹配:
可以直接使用不依赖于其他条件或扩展模块
包含网络协议、IP地址、网络接口等匹配方式
隐含条件匹配:
一般需要以特定的协议匹配作为前提
包括端口、TCP标记、ICMP类型等匹配方式
显示条件匹配:
需要使用“-m 拓展模块” 的形式明确指定匹配方式
包含多端口、MAC地址、IP地址范围、数据包状态等
匹配方式
协议匹配:
使用“-p 协议名” 的形式
协议名可使用在“/etc/protocols”文件中定义的名称
常用协议包括tcp、udp、icmp等
“-j [选项]”:
ACCEPT:接受
REJECT:拒绝访问,但是会回复拒绝
DROP:拒绝访问不给回应
端口匹配:
使用“--sport 源端口号”、 “--dport 目标端口”的形式
采用“端口1:端口2”的形式可以指定一个范围的端口
需要配合-p使用指定协议
数据包状态匹配:
使用“-m state”结合“--state 状态类型”的形式
同时表示多种状态时以逗号分割
常见的数据包状态包括:
NEW:第一次连接
ESTABLISHED:已经建立连接
RELATED:根据某个已经建立的关系,新建一个连接
地址匹配:
使用“-s 源地址” “-d 目的端口”的形式
地址可以时单个IP地址、网络地址(带掩码长度)
接口匹配:
使用“-i 网络接口名”、 “-o 网络接口名” 的形式,
分别对应接受、发送数据包的网络接口
默认的四表:(按访问先后顺序排列)
raw表:确定是否对数据包进行状态跟踪(含有PREROUTING\POSTROUTING链)
managle表:为数据包设置标记 #(含有PREROUTING\POSTROUTING\INPUT\OUTPUT\FORWARD链)
nat表:目的IP地址以及端口号 # nat和filter表用得最多 (含有PREROUTING\POSTROUTING\FORWARD链)
filter表:确定是否放行该数据包# (含有INPUT\OUTPUT\FORWARD链)
默认的五种规则链:
INPUT链:处理入站数据包
OUTPUT链:处理出战数据包
FORWARD链:处理转发数据包
POSTROUTING链:处理路由选择后处理数据包
PRETOUTING链:处理路由选择前处理数据包
规则链内匹配顺序:
按顺序依次进行检查,找到相匹配的规则,则按该链的默认策略处理
演示:
#!/bin/bash
#清空filter地规则、表里的规则都会被清空
iptables -F
#iptables
iptables -P INPUT DROP
#禁用web
iptables -A INPUT -S 192.168.101.33 -p tcp --dport 80 -j DROP
#禁用MYSQL
iptables -A INPUT -S 192.168.101.33 -p tcp --dport 3306 -j DROP
#禁用PING
iptables -A INPUT -p icmp --icmp--type 8 -j DROP
iptables -A INPUT -p icmp --icmp--type 0 -j ACCEPT
#允许ssh访问
iptables -A INPUT -S 192.168.101.33 -p tcp --dport 3306 -j ACCEPT
#以上都是临时存储,下面介绍永久保存规则
iptables-save > /root/all_iptables.txt
iptables-restore < /root/all_iptables.txt
开机时加载规则:
chmod +x /etc/rc.d/rc.local
/etc/rc.local 这个文件下的内容开机就会启动
将iptables-restore < /root/all_iptables.txt 写入文件
ping命令是使用的icmp协议

协议
SNMP协议(simple network manegerment protcol):简单网络管理协议
lsmod查看内核加载了哪些模块
防火墙脚本的一般结构
1、设置网段、网卡、IP地址等变量
2、加载包过滤相关的内核模块
FTP相关:ip_nat_ftp、ip_conntrack_ftp
Mail相关:ip_nat_irc、ip_conntrack_irc
3、确认开启路由转发功能
临时开启:
/sbin/sysctl -w net.ipv4.ip_forward=1
或
echo 1>/proc/sys/net/ipv4/ip_forward
永久开启:
修改/etc/sysctl.conf,设置net.ipv4.ip_forward=1

计算机网络微课堂
计算机网络的定义和分类
计算机网络的定义:
计算机网络的简单定义:一些互相连接的、自治的计算机的集合。
互连:是指计算机之间可以通过有线或无线的方法进行数据通信
自治:是指独立的计算机,他有自己的硬件和软件,可以单独运行使用
集合:是指至少需要两台计算机
计算机网络的分类:
计算机网络的性能指标
1、速率:
连接在计算机网络上的主机在数字信道上传送比特的速率,也称为比特率或数据率,常用数据率单位bit/s

例题:
有一个待发送的数据块,大小为100MB,网卡的发送速率为100Mbps,则网卡发送完该数据需要多久时间

2、带宽:

3、吞吐量:
吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量。
吞吐量被经常适用于对现实网络世界中的网络的一种测量,以便知道实际上到底有多少数据能够通过网络
吞吐量受网络的带宽或额定速率的限制。
4、时延:
网络时延= 发送实验+传播时延+处理时延

5、时延带宽积:
=传播时延*带宽

6、往返时间:

7、利用率:

8、丢包率:

计算机网络体系结构
1、常见的计算机网络体系结构
OSI体系结构:
从上到下:应用层、表示层、会话层、传输层、网路层、数据链路层、物理层七层
TCP/IP体系结构:
从上到下:应用层、传输层、网际层、网络接口层4层
原理体系结构:
应用层、传输层、网络层、数据链路层、物理层
2、计算机网络体系结构分成的必要性
“分层”可以将庞大而复杂的问题,转化为若干较小的局部问题

3、计算机网络体系结构分层的思想举例

4、计算机体系结构中的专用术语
实体:任何可以发送或接收信息的硬件或软件进程
对等实体:收发双方之间的对等硬件


协议:控制两个对等实体进行逻辑通信的规则集合
协议的三要素:语法、语义、同步
语法:定义双方交换信息格式
语义:定义收发双方所要完成的操作
同步:定义收发双方的时序逻辑
服务:
在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上一层提供服务
协议数据流单元PDU 对等层次之间传输的数据包称为该层的协议数据单元


物理层的基本概念
物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输比特流。
物理层为数据链路层屏蔽了各种传输媒体的差异,使数据链路层只需要考虑如何完成本层的协议和服务,而不必考虑网络传输媒介是什么
物理层下的传输媒体:
导引型传输媒介:双绞线、同轴电缆、光纤、电力线
非导引型传输媒介:无线电波、微波、红外线、可见光
同轴电缆图

双绞线图

光纤图


传输方式
串行传输

并行传输

同步传输和异步传输

单向通信、双向交替通信和双向同时通信

编码与调制

编码

信道极限容量
奈氏准则

香农公式


数据链路层
数据链路层的三个重要问题
封装成帧


差错检测

差错检测之奇偶校验

差错检测之循环冗余校验(CRC - Cyclic Redundancy Check)

可靠传输

可靠传输之停止-等待协议SW



可靠传输之回退N帧协议GBN

窗口数量大于2^n-1的时候接收方无法分辨新旧数据

可靠传输之选择重传协议SR

点对点协议PPP
点对点协议(Point-to-Point Protocol)是目前使用最广泛的点对点数据链路层协议

媒体接入控制
共享信道着重考虑的一个问题就是如何协调多个发送和接收点对一个共享传输媒体的占用,即媒体接入控制MAC(Medium Access Control)

随着技术的发展,交换技术的成熟和成本的降低,具有更高性能的使用点对点链路和链路层交换机的交换式局域网在有线领域已完全取代了共享式局域网,但由于无线信道的广播天性,无线局域网仍然使用的是共享媒体技术
静态划分信道
频分复用FDM

时分复用TDM

波分复用WDM-即光的频分复用

码分复用CDM

随机接入-动态接入
(采用CSMA/CD协议:载波监听多址接入/碰撞检测)
多址接入:多个站连接在一条总线上,竞争使用总线。
载波监听:每个站在发送帧之前都要先检测一下总线上是否有其他站点在发送帧(先听后说);若检测到总线空闲96比特时间,则发送这个帧;若检测到总线忙,则继续检测并等待总线转为空闲96比特时间,然后发送这个帧
碰撞检测CD:每一个正在发送帧的站边发送边检测碰撞(边听边说),一旦发现总线上出现碰撞,则立即停止发送,退避一段随机时间后再次重发。(一旦冲突,立即停说;等待时机,重新再说)

(采用CSMA/CA协议:载波监听多址接入/碰撞避免 )
在无线局域网中,不能使用碰撞检测CD的原因:
由于无线信道的传输条件特殊,其信号强度的动态范围范围非常大,无线网卡上接收到的信号强度往往会远远小于发送信号的强度(可能相差百万倍)。如果要在无线网卡上实现碰撞检测CD,对硬件的要求非常高。
即使能够在硬件上实现无线局域网的碰撞检测功能,但由于无线电波传播的特殊性(存在屏蔽站问题),进行碰撞检测的意义也不大。

802.11无线局域网使用CSMA/CA协议,在CSMA的基础上增加了一个碰撞避免CA功能,而不再实现碰撞检测功能。
由于不可能避免所有的碰撞,并且无线信道误码率较高,802.11标准还使用了数据链路层确认机制(停止-等待协议)来保证数据被正确接收。


以下情况必须使用退避算法:
- 在发送数据帧之前检测到信道处于忙时;
- 在每一次重传一个数据帧时
- 在每一次成功发送后要连续发送下一个帧时(这是为了避免一个站点长时间占用信道)
CSMA/CA协议的退避算法
在执行退避算法时,站点为退避计时器设置一个随机退避时间:



MAC地址、IP地址以及ARP协议
MAC地址
MAC地址时以太网的MAC的子层所使用的地址;(数据链路层)
MAC地址一般被固化在网卡(网络适配器)的电可擦只读存储器EEPROM中,因此MAC地址也称为硬件地址。
严格来说,MAC地址是唯一接口标识而不是唯一设备标识
IP地址作用
IP地址是TCP/IP体系结构网际层所使用的地址;(网际层)
IP地址是因特网上的主机和路由器所使用的地址,用于标识两部分信息:
网络编号:标识因特网数以百万计的网络
主机编号:标识同一网络上不同主机(或路由器各接口)

ARP协议
ARP协议属于TCP/IP体系结构的网际层,其作用是已知设备所分配到的IP地址,使用ARP协议可以通过该IP地址获取到设备的MAC地址 ;网际层)
ARP协议有自己的arp高速缓存表,表里的内容存放的是ip地址与对应的mac地址,动态的是arp发广播学来的,2分钟后便会清除。静态配置的是永久的。

交换机
以太网交换机自学习和转发帧的流程
以太网交换机工作在数据链路层(也包括物理层 )

以太网交换机的生成树协议STP
如何提高以太网的可靠性?
- 添加冗余链路可以提高以太网的可靠性,但是,冗余链路也会带来负面效应--形成网络环路
- 网络环路会带来以下问题:
- 广播风暴:
- 广播风暴的危害:大量消耗网络资源,使得网路无法正常转发其他数据帧
- 主机收到重复的广播帧
- 大量消耗主机资源
- 交换机的帧交换表震荡(漂移)
- 广播风暴:
- 为了避免在增加冗余链路来提高网络可靠性的同时又避免网络环路带来的各种问题便有了生成树协议STP
- 不论交换机之间采用怎样的物理连接,交换机都能够自动计算并构建一个逻辑上没有环路的网络,其逻辑拓扑结构必须是树形的(无逻辑环路)

虚拟局域网VLAN
虚拟局域网VLAN是一种局域网内的设备划分成与物理位置无关的逻辑组技术,这些逻辑组具有某些共同的需求
Access端口

Trunk端口


网络层
概述
网络层的主要任务是实现网络互联,进而实现数据包在个网络之间的传输
要实现网络层任务,需要解决以下主要问题:
- 网络层向运输层提供怎样的服务(“可靠传输”还是“不可靠传输”)
- 网络层寻址问题
- 路由选择问题
网路层提供的两种服务
面向连接的虚电路服务
- 可靠通信由网络来保证连接——虚拟电路VC(Virtual Circuit)
- 通信双方沿着已建立的虚电路发送分组

无连接的数据报服务
- 可靠通信应当由用户主机来保证
- 不需要建立网络连接
- 每个分组可走不同的路径
- 每个分组的首部必须携带目的主机的完整地址
- 这种通信方式所传送的分组可能误码、丢失、重复和失序
IPv4地址
IPv4地址就是给因特网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32比特的标识符
2014-2015年也逐步停止了面向新用户和应用分配IPv4地址。同时开始全面开展商用部署IPv6.
IPv4分类编址

A类网络

B类网络

C类地址

划分子网的IPv4地址
32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特作为子网号



默认子网掩码

无分类编址的IPv4地址



IPv4地址的应用规划
定长子网掩码FLSM

变长子网掩码VLSM

IP数据包的发送和转发过程
默认网关

静态路由配置及其可能产生路由环路的问题

路由环路



路由协议
因特网采用分层次的路由选择协议

常见的路由选择协议

路由信息协议RIP的基本工作原理
路由信息协议RIP(Routing Information Protocol)是内部网关协议IGP中最先得到广泛使用的协议之一。

RIP认为好的路由就是“距离短”的路由,也就是所通过路由器数量最少的路由。
当到达同一目的的网络有多条“距离相等”的路由时,可以进行等价负载均衡

路由更新的规则


RIP协议存在**坏消息传播得慢**的问题
“坏消息传播得慢”又称为路由环路或距离无穷计数问题,这是距离向量算法的一个固有问题,所以下一跳地址最多只能到15

开放最短路径优先OSPF协议工作原理

OSPF相邻路由器之间通过交互问候(Hello)分组 ,建立和维护邻居关系。

链路状态通告LSA

链路状态数据库LSDB

基于LDSB构建路由表

OSPF的五种分组类型

OSPF在多点接入网络中路由器建立邻居关系

为了使OSPF能够用于规模很大的网络,OSPF把一个自治系统再划分区域

边界网关协议BGP的基本工作原理
配置BGP时,选择BGP发言人

BGP发言人交换网络可达性的信息(要到达某个网络所要经过的一系列自治系统)
当BGP发言人交互了网络可达性的信息后,各BGP发言人就根据所采用的策略从收到路由信息中找出到达各自治系统的较好的路由。也就是构造出树形结构、不存在回路的自治系统连接图。
BGP适用于多级结构的因特网

BGP-4有以下四种报文:


IPv4的首部数据报格式

IP数据报长度相关

标识、标志、片偏移字段(这三个字段共同用于IP数据报分片)

生存时间TTL——防止IP数据报在网络中永久兜圈
占8比特,最初以秒为单位,最大生存周期时间为255秒;路由器转发IP数据报时,将IP数据报首部中的该字段的值减去IP数据报在本机路由器上所消耗的时间,若不为0就转发,否则就丢弃。
现在以跳数为单位,路由器转发IP数据报时,将IP数据报首部中的该字段值减1,若不为0就转发,否则就丢弃。

协议

首部检验和
占用16个比特,用来检测首部在传输过程中是否出现差错。比CRC检验码简单,称为因特网检验和。
网际控制报文协议ICMP
ICMP差错报告报文共有一下五种:
- 终点不可达

- 源点抑制


- 时间超过

- 参数问题

- 改变路由(重定向)

以下情况不应发送ICMP差错报文:
常见的两种ICMP询问报文:

ICMP协议的应用举例
- 分组网间探测PING

- 跟踪路由


tracert命令原理



虚拟专用网VPN与网络地址NAT转换
虚拟专用网VPN(Vitual Private Network)原理


网络地址转换NAT的基本工作原理






运输层
计算机网络体系结构中的物理层、数据链路层以及网络层他们共同解决了将主机通过异构网络互联起来所面临的问题,实现了主机到主机的通信。
运输层是实现主机之间应用进程和应用进程之间的通信。



UDP和TCP的对比
UDP和TCP是TCP/IP协议体系结构运输层中两个重要协议

UDP:用户数据报协议(User Datagram Protocol),适用于实时应用如IP电话、视频会议等
TCP:传输控制协议(Transmission Control Protocol),适用于文件传输等
- UDP是无连接的,TCP是面向连接的

- UDP支持单波、多播以及广播;TCP仅支持单播

- 两个协议对应用报文的处理。UDP是面向应用报文的,TCP是面向字节流的。

- UDP是向上层提供无连接的不可靠协议;TCP是提供面向连接的可靠传输服务

- TCP支持可靠传输,流量控制,拥塞控制所以TCP报文段远大于UDP报文段

TCP的流量控制
流量控制就是让发送方的发送速率不要太快,要让接收方来得及接收。利用滑动窗口机制可以很方便地在TCP连接上实现对发送方的流量控制。

当接收窗口的缓存数据得到释放有了空闲接收窗口缓存空间时

TCP的拥塞控制
概念

四种拥塞控制算法

- 慢开始:cwnd=1开始,依次增加所发数据窗口量,当增长到慢开始门限值是便开始调用拥塞避免算法

- 拥塞避免



- 快重传

- 快恢复


TCP超时重传时间的选择
超时重传时间的选择是TCP最复杂的问题之一

超时重传时间RTO应该略大于往返时间RTT


TCP可靠传输的实现(三次握手四次挥手)
TCP基于以字节为单位的滑动窗口来实现可靠传输





三次握手
TCP连接建立要解决以下三个问题

关于三次握手的简单说明:
- TCP服务器首先创建传输控制块存储TCP里的一些重要信息(TCP连接表、指向发送和接收缓存的指针、指向重传队列的指针、当前发送和接收序号等)然后进入监听(被动打开连接)
- TCP客户进程也首先创建传输控制块(同上)
- 然后在打算建立TCP连接时向TCP服务进程发送TCP连接请求报文 段并进入SYN-SENT(同步已发送状态),TCP连接请求报文段首部中的同步位SYN被设置为1,序号字段seq设置初始值x,作为TCP客户进程所选择的初始序号。 (主动打开连接)
- TCP服务器进程收到TCP连接请求报文段后 如果同意建立连接则向TCP连接请求确认报文段,并进入SYN-RCVD(同步已接受状态)。该TCP请求确认报文段首部中同步为SYN和确认位ACK都设置为1,序号字段seq被设置了一个初始值y作为TCP服务进程所选择的初始序号,确认号字段ack的值被设置为x+1,这是对TCP客户进程seq所选择的初识序号的确认
- TCP客户进程收到TCP连接请求确认报文段后,还要向TCP服务器发送一个普通的TCP确认报文段,并进入ESTABLISHED(连接以建立状态),该报文段首部ACK设置为1,表明这是一个普通的TCP确认报文段,序号字段seq=x+1,这是因为TCP客户进程发送的第一个seq报文段序号为x,ack=y+1,这是对TCP服务器进程所选择的初始序列的确认。服务器收到后也进入连接已建立状态

思考为什么不能建立两次握手?
之所以采用三报文握手而不是二报文握手,这是为了防止已失效的连接请求报文段突然又传送到了TCP服务器,因而导致TCP服务器进入连接已建立状态等待TCP客户端发送数据

四次挥手
- 数据传输结束后,TCP客户进程的应用程序通知T其主动关闭TCP连接,TCP客户进程会发送TCP连接释放报文段,并进入终止等待1状态(FIN-WAIT-1)。该报文段的首部中的终止位FIN和确认位ACK的值被置为1,表明这是一个TCP连接释放报文段,同时也对之前收到的报文段进行确认。序号seq=u,这里u等于TCP客户进程之前已经发送过的数据的最后一个字节的序号+1(请注意,TCP报文段规定即使不携带数据,也消耗掉一个序号),确认号ack=v,它等于TCP客户进程之前已收到的数据的最后一个字节的序号+1。
- TCP服务器进程收到连接释放报文后即发出确认, 会发送一个普通的TCP确认报文段并进入关闭等待状态(CLOSE-WAIT)。该报文段中的ACK=1表示这是一个普通的确认报文段,序号seq=v,他等于服务进程之前发送的数据的最后一个字节的序号+1这也与它之前收到的TCP连接释放报文段中的确认号匹配,ack=u+1这是对TCP连接释放报文段的确认。TCP服务进程这个时候要通知高层应用进程这时候要断开与自己的TCP连接。此时,从TCP客户进程到TCP服务器进程这个方向的连接就释放了,这时的TCP连接属于半关闭状态,但是TCP服务器进程到TCP客户进程方向的连接还没有被关闭。TCP客户进程收到TCP服务进程的确认报文段后进入终止等待2状态(FIN-WAIT-2)。
- 当TCP服务器进程没有数据要发送给 TCP客户进程后,其应用进程就通知TCP服务器释放连接。TCP服务进程发送TCP连接进程发送TCP连接释放报文段并进入最后确认状态。该报文段的首部中的终止位FIN和确认位ACK的值被置为1,表明这是一个TCP连接释放报文段,同时也对之前收到的报文段进行确认。现在假定seq=w,w等于TCP客户进程发送过的数据的最后一个字节的序号+1,同时还必须重复上次已经发送过的确认号ack=u+1。然后进入最后确认状态(LAST-ACK)
- TCP客户进程收到了TCP服务器发来的连接释放报文 后,对该报文段发送普通的TCP确认报文段,之后进入时间等待状态(TIME-WAIT)。该报文段首部中的ACK的值被设置为1,表示这是一个普通的TCP确认报文段,seq=u+1表示这是TCP客户进程之前发送的最后一个字节为u,ack=w+1这是对所收到的TCP连接释放报文段的确认。 TCP服务进程收到该报文段后就进入关闭状态 (CLOSED)
- TCP客户进程还要经过2MSL后才能进入关闭状态。 MSL的意思是最长报文段寿命(RFC793建议设置为2分钟)。

思考:TCP客户进程在收到连接释放报文段后为什么不直接进入关闭状态?
第一,为了保证TCP客户进程发送的确认报文到达了TCP服务进程。因为这个确认报文有可能会在传输过程中丢失,因而使服务进程一直收不到确认报文。

第二,也可以防止已失效的连接请求报文段出现在本连接中。经过2MSL后,就可以使连接持续时间内所产生的所有报文段都从网络中消失。这样就可以使下一个新连接不会出现这种旧的连接请求报文段。
TCP中保活计时器的作用

TCP报文段的首部格式
为了实现可靠传输,TCP采用了面向字节流的方式。
但TCP在发送数据时,是从发送缓存取出一部分或全部字节并给其添加一个首部并使之成为TCP报文段后进行发送。
一个TCP报文段由首部和数据载荷两部分构成
TCP的全部功能都体现在它首部中各字段的作用。
TCP报文段的首部格式:

序号字段:如图,序号字段占32比特,取值范围是[0,2^32-1],序号增加到最后一个后,下一个序号就又回到0。指出本TCP报文段数据载荷的第一个字节的序号

确认号字段:如图,确认号字段占32比特,取值范围是[0,2^32-1],序号增加到最后一个后,下一个序号就又回到0。用于指出期望收到对方下一个TCP报文段的数据载荷的第一个字节的序号,同时也是对之前收到的所有数据的确认。
确认表示位ACK:取值为1时确认号字段才有效;取值为0时确认号字段无效。TCP规定,在连接建立后所有哦传输的TCP报文段都必须把ACK置1
数据偏移:占4比特,并以4字节为单位。用来指出TCP报文段的数据载荷部分的起始处距离TCP报文段的起始处有多远。该字段实际上指出了TCP报文段的首部长度。(首部固定长度为20字节,因此数据偏移字段的最小值为(0101)2;加上40扩展字节首部最大长度为60字节因此数据偏移字段的最小值为(1111)2)

窗口字段:占16比特,以字节为单位。指出发送本报文段的一方的接收窗口。窗口值作为接收方让发送方设置其发送窗口的依据。这是以接收方的接收能力来控制发送方式的发送能力,称为流量控制。发送窗口大小还取决于拥塞窗口和接收窗口值,两则取小。
同步标志位SYN:在TCP连接建立时用来同步序号。
终止标志位FIN:用来释放TCP连接。
推送标志位PSH:接收方的TCP收到该标志位为1的报文段会尽快上交应用进程,而不必等到接收缓存都填满后再向上交付。
紧急标志位URG: 紧急标志位URG=1时紧急字段有效;紧急标志位URG=0时紧急字段无效。
紧急指针:占16比特,以字节为单位,用来指明紧急数据的长度。


在浏览器地址栏中输入Web服务器的域名后发生的事情:
应用层
概述

应用层是计算机网络体系结构的最顶层,是设计和建立计算机网络的最终目的,也是计算机网络中发展最快的部分。
客户服务器方式和对等方式
客户服务器方式(C/S方式)
基于C/S方式的应用服务通常是服务集中型的,即应用服务集中在,网络中比客户计算机少得多的服务器计算机上。


P2P方式


动态主机配置协议DHCP




域名系统DNS



因特网的域名空间


域名解析的过程
递归查询

迭代查询



文件传输协议FTP

FTP的基本工作原理

电子邮件

SMTP的基本工作原理




邮件读取协议

www万维网
超文本传输协议HTTP
1.0

1.1

http请求报文格式

http响应报文格式






浙公网安备 33010602011771号