计算机网络 基础知识学习

0.0 概述

计算机网络体系结构

  • OSI 的七层协议体系结构的概念清楚,理论也较完整,但它既复杂又不实用。
  • TCP/IP 是四层体系结构:应用层、运输层、网际层和网络接口层。但最下面的网络接口层并没有具体内容。
  • 因此往往采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。
    在这里插入图片描述

1.0 应用层

应用层的具体内容就是规定应用进程在通信时所遵循的协议。

1.1 域名系统 DNS

  • 任何一个连接在互联网上的主机或路由器,都有一个唯一的层次结构的名字,即域名
  • 名字到 IP 地址的解析是由若干个域名服务器程序完成的。域名服务器程序在专设的结点上运行,运行该程序的机器称为域名服务器
  • 域名的结构由标号序列组成,各标号之间用点隔开:
    eg: … . 三级域名 . 二级域名 . 顶级域名
    在这里插入图片描述

1.2 文件传送协议 FTP

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

1.3 超文本传输协议 HTTP

  • 在万维网客户程序与万维网服务器程序之间进行交互所使用的协议,是超文本传送协议 HTTP (HyperText Transfer Protocol)。
  • 超文本标记语言 HTML (HyperText Markup Language) 使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到互联网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来。
  • HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送。
  • 在生成 TCP 套接字之前,必须先与 HTTP 服务器进行三次握手来建立连接。

2.0 运输层

  • 运输层为相互通信的应用进程提供了逻辑通信
  • 运输层向高层用户屏蔽了下面网络核心的细节(如网络拓扑、所采用的路由选择协议等),它使应用进程看见的就是好像在两个运输层实体之间有一条端到端的逻辑通信信道。
  • 根据应用程序的不同需求,运输层需要有两种不同的运输协议,即面向连接的TCP无连接的UDP

2.1 TCP和UDP

TCP

  • 面向连接的运输层协议。
  • 每一条 TCP 连接只能有两个端点 (endpoint),每一条 TCP 连接只能是点对点的(一对一)。 TCP 连接的端点叫做套接字 (socket) 或插口。
  • 提供可靠交付的服务。
  • 提供全双工通信
  • 面向字节流

UDP

  • 无连接的,发送数据之前不需要建立连接,因此减少了开销和发送数据之前的时延。
  • UDP 使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的连接状态表。
  • UDP 是面向报文的。UDP 对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界。UDP 一次交付一个完整的报文。
  • UDP 没有拥塞控制,因此网络出现的拥塞不会使源主机的发送速率降低。这对某些实时应用是很重要的。很适合多媒体通信的要求。
  • UDP 支持一对一、一对多、多对一和多对多的交互通信。
  • UDP 的首部开销小,只有 8 个字节,比 TCP 的 20 个字节的首部要短。

2.2 TCP的三次握手

  • TCP 建立连接的过程叫做握手。
  • 握手需要在客户和服务器之间交换三个 TCP 报文段。称之为三报文握手。
  • 采用三报文握手主要是为了防止已失效的连接请求报文段突然又传送到了,因而产生错误
    在这里插入图片描述
    过程(A 为客户端,B 为服务器端):
    1、B 处于 LISTEN(监听)状态,等待客户的连接请求。
    2、A 的TCP向 B 发出连接请求报文段,其首部中的同步位 SYN = 1,并选择序号 seq = x,表明传送数据时的第一个数据字节的序号是 x。
    3、B 的 TCP 收到连接请求报文段后,如同意,则发回确认。确认报文段中应使 SYN = 1,使 ACK = 1,其确认号ack = x+1,自己选择的序号 seq = y。
    4、A 收到此报文段后向 B 给出确认,其 ACK = 1,确认号 ack = y+1。
    5、A 的 TCP 通知上层应用进程,连接已经建立。

2.3 TCP的四次挥手

在这里插入图片描述
现在 A 的应用进程先向其 TCP 发出连接释放报文段,并停止再发送数据,主动关闭 TCP 连接。
1、A 把连接释放报文段首部的 FIN = 1,其序号seq = u,等待 B 的确认。
2、B 发出确认,确认号 ack = u+1,而这个报文段自己的序号 seq = v。 从 A 到 B 这个方向的连接就释放了,TCP 连接处于半关闭状态。B 若发送数据,A 仍要接收。
3、若 B 已经没有要向 A 发送的数据,其应用进程就通知 TCP 释放连接。
4、A 收到连接释放报文段后,必须发出确认。在确认报文段中 ACK = 1,确认号 ack = w+1,自己的序号 seq = u+1。
TCP 连接必须经过时间 2MSL 后才真正释放掉。

3.0 网络层

  • 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
  • 网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限。
  • 互联网使用的网络层协议是无连接的网际协议(Intert Prococol)和许多路由选择协议,因此互联网的网络层也叫做网际层IP层
    在这里插入图片描述

3.1 网际协议 IP

  • IP是 TCP/IP 体系中两个最主要的协议之一。
  • IP 地址就是给每个连接在互联网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符。
  • 与 IP 协议配套使用的还有三个协议:
    地址解析协议 ARP (Address Resolution Protocol)
    网际控制报文协议 ICMP (Internet Control Message Protocol)
    网际组管理协议 IGMP (Internet Group Management Protocol)
    在这里插入图片描述

将网络互相连接起来要使用一些中间设备,中间设备又称为中间系统或中继 (relay)系统。

有以下五种不同的中间设备:
物理层中继系统:转发器 (repeater)。
数据链路层中继系统:网桥桥接器 (bridge)。
网络层中继系统:路由器 (router)。
网桥和路由器的混合物:桥路器 (brouter)。
网络层以上的中继系统:网关 (gateway)。

当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络。

3.2 IP 地址的编址方法

1、分类
IP 地址 ::= {< 网络号 >, < 主机号 >}
在这里插入图片描述
在同一个局域网上的主机或路由器的IP 地址中的网络号必须是一样的。

2、子网划分
IP 地址 ::= {< 网络号 >, < 子网号 >, < 主机号 >}
在这里插入图片描述

  • 划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络。
  • 从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位。
  • 划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id。
    要使用子网,必须配置子网掩码。
  • (IP 地址) AND (子网掩码) =网络地址
    在这里插入图片描述

3、无分类

  • IP地址 ::= {<网络前缀>, <主机号>}
  • CIDR 使用“斜线记法。128.14.32.0/20 表示的地址块共有 2^12 个地址(因为斜线后面的 20 是网络前缀的位数,所以这个地址的主机号是 12 位)

3.3 IP 数据报的格式

IP 数据报由首部和数据两部分组成
在这里插入图片描述

  • 版本——占 4 位,指 IP 协议的版本。目前的 IP 协议版本号有 4 (即 IPv4)和6(IPv6)。

4.0 数据链路层

两台主机之间的数据传输,总是在一段一段的链路上传送的,这就需要使用专门的链路层的协议。 在两个相邻节点之间传送数据时,数据链路层将网络层交下来的IP数据报组装程帧,在两个相邻节点间的链路上传送帧。

数据链路层的简单模型
在这里插入图片描述

数据链路层协议有许多种,但有三个基本问题则是共同的。这三个基本问题是:
(1) 封装成帧
(2) 透明传输
(3) 差错控制

4.1 信道

数据链路层使用的信道主要有以下两种类型:
点对点信道。这种信道使用一对一的点对点通信方式。
广播信道。这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。

在这里插入图片描述

4.2 PPP协议

对于点对点的链路,目前使用得最广泛的数据链路层协议是点对点协议 PPP(Point-to-Point Protocol)。
在这里插入图片描述

4.3 CSMA/CD协议

CSMA/CD 含义:载波监听多点接入 / 碰撞检测 (Carrier Sense Multiple Access with Collision Detection) 。

  • 多点接入表示许多计算机以多点接入的方式连接在一根总线上。
  • 载波监听是指每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据,如果有,则暂时不要发送数据,以免发生碰撞。
    总线上并没有什么“载波”。因此, “载波监听”就是用电子技术检测总线上有没有其他计算机发送的数据信号。
  • 碰撞检测就是计算机边发送数据边检测信道上的信号电压大小。

5.0 物理层

物理层考虑的是怎样才能在连接各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。
物理层的作用是要尽可能地屏蔽掉不同传输媒体和通信手段的差异。
用于物理层的协议也常称为物理层规程 (procedure)。

发布了3 篇原创文章 · 获赞 6 · 访问量 59

猜你喜欢

转载自blog.csdn.net/weixin_39608621/article/details/105431165