🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀网络>计算机网络_十二月的猫的博客-CSDN博客💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光
目录
1. 前言
2. 前提回顾
2.1 应用层
2.2 传输层
2.3 网络层
2.4 数据链路层
2.5 物理层
3. 应用层
3.1 各个协议的概述
3.2 应用层模式
3.2.1 客户端(Client) - 服务器(Server)模式
3.2.2 对等网络模式
3.3 Web 和电子邮件协议
3.3.1 超文本传输协议和超文本标记语言
HTTP 和 HTTPS
3.3.2 电子邮件协议
SMTP、POP 和 IMAP
3.4 域名解析系统DNS
3.4.1 IP 编址服务
域名服务
DNS 消息格式
DNS 层级
3.5 动态主机配置协议(DHCP)
3.5.1 DHCP 工作原理
3.6 文件共享服务(FTP协议)
文件传输协议
4. 总结
1. 前言
今天是【网络>计算机网络】课程考试前一周时间,趁着网络>计算机网络考试,猫猫来进一步梳理计网这门课程的知识,希望也能给阅读本系列文章的友友们提供一些帮助。
本系列分为两个部分:
- 全面知识梳理
- 特别知识梳理
(全面知识梳理一律加上【第*章】字样,是软件工程所有知识的全面梳理)
(特别知识梳理一律加上 【一篇搞定】字样,仅仅作为特别重要内容的展开延申)
参考书籍🥰:
《网络>计算机网络(第5版)》是2012年清华大学出版社出版的图书,作者是Andrew S. Tanenbaum, David J. Wetherall
十二月的猫猫在这里祝愿大家都能在期末考试中取得好成绩,高分拿拿拿!考试过过过!💯
2. 前提回顾
2.1 应用层
应用层是网络模型的顶层,直接为用户提供各种网络服务。我们常用的各种互联网应用程序都是基于应用层协议运行的。下面我们来看看几种常见的应用层协议。
- HTTP(超文本传输协议):HTTP 是用于万维网(WWW)的核心协议,是浏览器和服务器之间通信的基础。它定义了浏览器如何请求网页以及服务器如何返回网页内容。每当你在浏览器中输入一个网址并按下回车键时,HTTP 就开始工作了!
- SMTP(简单邮件传输协议):SMTP 是用于电子邮件传输的协议。它主要用于邮件客户端与服务器之间的邮件发送和接收,以及服务器之间的邮件转发。如果没有 SMTP,我们的电子邮件就无法在互联网上传递。
- DNS(域名系统):DNS 是将人类可读的域名转换为计算机可读的 IP 地址的系统。想象一下,如果我们每次上网都要记住一串数字(IP 地址)该有多麻烦!DNS 就是为了简化这个过程,让我们可以通过简单的域名访问网站。
- FTP(文件传输协议):FTP 是用于在网络上传输文件的协议。它允许用户上传、下载和管理文件。如果你需要在互联网上传输大量数据,FTP 是一个非常方便的选择。
2.2 传输层
传输层负责在两个端点之间提供可靠的数据传输服务。它主要通过两种协议来实现这一目标:TCP 和 UDP。
- TCP(传输控制协议):TCP 是一种面向连接的协议,提供可靠的数据传输服务。它通过建立连接、确认数据接收和重传丢失的数据,确保数据能够准确无误地到达目的地。比如,当你在网上下载一个文件时,TCP 就在确保文件完整无误地传输到你的电脑上。
- UDP(用户数据报协议):UDP 是一种无连接的协议,不提供可靠性保证。它发送数据报文,但不确认接收,也不重传丢失的数据。这使得 UDP 更加高效,但也意味着数据可能丢失或顺序错乱。视频流、在线游戏等实时应用通常使用 UDP,因为它们更注重速度而不是数据完整性。
2.3 网络层
网络层负责在不同网络之间路由数据包。它通过 IP 地址和其他路由信息,确定数据包的最佳传输路径。
- ICMP(互联网控制报文协议):ICMP 主要用于发送错误消息和操作信息。例如,当你使用 ping 命令检查某个地址是否可达时,ICMP 就在背后工作。它发送一个回声请求报文到目标地址,并等待回声应答。
- IP(互联网协议):IP 是网络层的核心协议,负责将数据包从源地址传输到目的地址。IP 协议定义了 IP 地址的结构,并为数据包的传输提供路由信息。IPv4 和 IPv6 是两种主要的 IP 协议版本。
- 路由器:路由器是连接不同网络的设备,负责在网络之间转发数据包。它通过分析 IP 地址和路由表,确定数据包的最佳传输路径,并将其转发到下一个网络节点。
- 防火墙:防火墙是一种网络安全设备,用于监控和控制进出网络的流量。它通过预定义的安全规则,过滤和阻止潜在的恶意流量,保护网络免受攻击。
2.4 数据链路层
数据链路层负责在同一网络中传输数据帧。它通过物理地址(MAC 地址)来标识网络设备,并提供错误检测和纠正。
- 网卡(网络接口卡):网卡是连接计算机和网络的硬件设备。它负责在计算机与网络之间传输数据,并将数据帧转换为电信号或光信号,以便在物理介质上传输。
- 网桥:网桥是一种连接两个或多个网络段的设备,工作在数据链路层。它通过分析数据帧的 MAC 地址,决定是否转发数据帧,以此连接和隔离不同网络段。
- 交换机:交换机是一种多端口网桥,常用于局域网(LAN)中。它通过学习和存储网络设备的 MAC 地址,智能地将数据帧转发到目标设备。交换机大大提高了网络的传输效率和性能。
2.5 物理层
物理层是网络模型的最低层,负责在物理介质上传输比特流。它定义了物理连接的规范,包括电缆、连接器和信号类型。
- 中继器:中继器是一种用于扩展网络覆盖范围的设备。它接收、放大并重新发送信号,以确保信号能够传输更远的距离。中继器通常用于有线网络和无线网络中。
- 集线器:集线器是一种多端口的中继器,用于在局域网中连接多个设备。它将接收到的数据帧广播到所有端口,尽管这种方式效率较低,但在小型网络中仍然常见。
3. 应用层
在OSI和TCP/IP 模型中的应用层最接近最终用户。如图所示,该层为用于通信的应用程序和用于消息传输的底层网络提供接口。应用层协议用于在源主机和目的主机上运行的程序之间进行数据交换。
基于TCP/IP模型,OSI 模型上面三层(应用层、表示层和会话层)定义了 TCP/IP 应用层的功能。
目前已有很多种应用层协议,而且人们还在不断开发新的协议。某些最广为人知的应用层协议包括超文本传输协议(HTTP)、文件传输协议 (FTP),简单文件传输协议 (TFTP),互联网邮件访问协议 (IMAP) 和域名系统 (DNS) 协议。如下图:
应用层:对应用程序的通信提供服务
应用层功能:文件传输、电子邮件、虚拟终端、查询服务
应用层协议:FTP、SMTP和POP3、HTTP、DNS
应用层模型:C/S模型、P2P模型
3.1 各个协议的概述
TCP/IP 应用层协议指定了许多常见互联网通信功能必需的格式和控制信息。在通信会话过程中,源设备和目的设备均使用应用层协议。为确保通信畅通,源主机和目的主机上所实现的应用层协议必须一致。
域名系统
DNS - 域名系统(或服务)
-
TCP,UDP客户端 53
-
将域名(例如 cisco.com)转换为 IP 地址。
主机配置
BOOTP - 引导程序协议
-
UDP 客户端 68,服务器 67
-
允许无盘工作站探查其 IP 地址、网络中 BOOTP 服务器的 IP 地址以及要加载到内存中以引导机器的文件
-
BOOTP 正在被 DHCP 所取代
DHCP - 动态主机配置协议
-
UDP 客户端 68,服务器 67
-
动态分配IP地址可以重复使用不再需要的地址
电子邮箱
SMTP - 简单邮件传输协议
-
TCP 25
-
允许客户端向邮件服务器发送电子邮件
-
允许服务器向其他服务器发送电子邮件
POP3 - 邮局协议
-
TCP 110
-
允许客户端从邮件服务器检索电子邮件 将电子邮件* 下载到客户端的本地邮件应用程序
IMAP - 互联网消息访问协议
-
TCP 143
-
允许客户端访问存储在邮件服务器中的电子邮件
-
在服务器上维护电子邮件
文件传输
FTP - 文件传输协议
-
TCP 20至21
-
设置规则,使得一台主机上的用户能够通过网络访问另一台主机或向其传输文件
-
FTP是一种可靠、面向连接且进行确认的文件传输协议。
TFTP - 简单文件传输协议
-
UDP 客户端 69
-
一个简单的,无连接的文件传输协议,使用尽最大努力、不被答复的文件交付
-
它使用的开销比FTP少
Web
HTTP - 超文本传输协议
-
TCP 80,8080
-
有关在万维网上交换文本、图形图像、音频、视频以及其他多媒体文件的一组规则集
HTTPS - 安全 HTTP
-
TCP,UDP 443
-
浏览器使用加密技术保护 HTTP 通信
-
验证您的浏览器连接的网站
3.2 应用层模式
3.2.1 客户端(Client) - 服务器(Server)模式
在前面的主题中,您了解了在源和目的主机上实现的TCP/IP应用层协议必须是兼容的。在本主题中,您将了解应用层中的客户端/服务器模式和使用的流程。对等网络也是如此。在客户端-服务器模型中,请求信息的设备称为客户端,而响应请求的设备称为服务器。客户端是一个硬件/软件的组合,人们使用它来直接访问存储在服务器上的资源。
客户端进程和服务器进程都处于应用层。客户端首先向服务器发送数据请求,服务器通过发送一个或多个数据流来响应客户端。应用层协议规定了客户端和服务器之间请求和响应的格式。除了实际数据传输外,数据交换过程还要求用户身份验证以及要传输的数据文件的标识。
客户端-服务器网络的一个示例是使用 ISP 的电子邮件服务发送、接收和存储电子邮件。家用计算机的电子邮件客户端向 ISP
的电子邮件服务器请求所有未读邮件。随后服务器向客户端发送被请求的邮件以示响应。从客户端到服务器的数据传输称为上传;而从服务器到客户端的数据传输则称为下载。
如图所示,文件从服务器下载到客户端。
3.2.2 对等网络模式
在对等 (P2P) 网络模式中,可以从对等设备访问数据,而无需使用专用服务器。P2P 网络模型包含两个部分:P2P 网络和 P2P 应用程序。这两个部分具有相似的特征,但实际工作过程却大不相同。
在 P2P 网络中,两台或多台计算机通过网络互连,它们共享资源(如打印机和文件)时可以不借助专用服务器。每台接入的终端设备(称为“对等体”)既可以作为服务器,也可以作为客户端。在某项事务中,作为服务器的计算机也可以同时成为其他服务器的客户端。于是,计算机的角色根据请求的不同在客户端和服务器之间切换。除共享文件外,这样一个网络还允许用户启用网络游戏,或者共享互联网连接。在对等交换中,两台设备在通信过程中处于平等地位。对等体1拥有与对等体2共享的文件,并且可以访问直接连接到对等体2的共享打印机来打印文件。对等体2正在与对等体1共享直接连接的打印机,同时访问对等体1上的共享文件,如图所示。
在P2P应用程序中,对等 (P2P) 应用程序允许设备在同一通信中同时充当客户端和服务器。在该模型中,每台客户端都是服务器,而每台服务器也同时是客户端。P2P应用程序要求每台终端设备提供用户界面并运行后台服务。某些 P2P 应用程序中采用混合系统,即共享的资源是分散的,但指向资源位置的索引存储在集中目录中。在混合系统中,每台对等设备通过访问索引服务器获取存储在另一台对等设备中的资源位置。
3.3 Web 和电子邮件协议
3.3.1 超文本传输协议和超文本标记语言
有些应用层特定的协议是为web浏览和电子邮件等常见用途设计的。第一个主题概述了这些协议。本主题将进一步详细介绍。
当在 Web 浏览器中输入一个 Web 地址或统一资源定位符 (URL) 时,Web 浏览器将与Web 服务建立连接。Web 服务正在使用 HTTP 协议的服务器上运行。一提到 Web地址,大多数人往往想到 URL 以及统一资源标识符 (URI)。
以下展示浏览器如何打开网页:
步骤 1
浏览器对 URL 地址的三个组成部分进行分析:
-
http(协议或方案)
-
www.cisco.com
(服务器名称) -
index.html(所请求的特定文件名)
步骤 2
然后,浏览器将通过域名服务器DNS将 www.cisco.com 转换成数字表示的 IP地址,用它连接到该服务器。客户端通过向服务器发送GET请求向服务器发起一个HTTP请求并请求index.html文件。
步骤 3
作为对请求的响应,服务器将此web页面的HTML代码发送到浏览器。
步骤 4
浏览器解译 HTML 代码并为浏览器窗口格式化页面。
HTTP 和 HTTPS
HTTP 是一种请求/响应协议。当客户端,尤其是 Web 浏览器,发送请求到 Web 服务器时,HTTP 将指定用于该通信的消息类型。常用的三种消息类型包括 GET(见图)、POST 和 PUT。
-
GET - 客户端请求数据。客户端(Web 浏览器)向 Web 服务器发送 GET 消息以请求 HTML 页面。
-
POST - 上传数据文件到 Web 服务器,例如表单数据。
-
PUT - 用于向 Web 服务器上传资源或内容,例如图像。
尽管 HTTP 灵活性相当高,但它不是一个安全协议。由于请求消息以明文形式向服务器发送信息,它非常容易被拦截和解读。服务器的响应(尤其是 HTML 页面)也不加密。
为了在互联网中进行安全通信,人们使用 HTTP 安全(HTTPS)协议。HTTPS 借助身份验证和加密来保护数据,使数据得以安全地在客户端与服务器之间传输。HTTPS 使用的客户端请求服务器响应过程与HTTP 相同,但在数据流通过网络传输以前会使用安全套接字层 (SSL) 加密。
3.3.2 电子邮件协议
电子邮件托管是 ISP提供的主要服务之一。如果要在计算机或其他终端设备上运行电子邮件,仍然需要多种应用程序和服务,如图所示。邮件是通过网络发送、存储和检索电子消息的存储转发方法。邮件消息存储在邮件服务器的数据库中。
邮件客户端通过与邮件服务器通信来收发邮件。邮件服务器之间也会互相通信,以便将邮件从一个域发到另一个域中。也就是说,发送邮件时,邮件客户端并不会直接与另外一个邮件客户端通信。而是双方客户端均依靠邮件服务器来传输邮件。
电子邮件支持三种单独的协议以实现操作:简单邮件传输协议 (SMTP)、邮局协议 (POP) 和Internet 邮件访问协议 (IMAP)。发送邮件的应用层进程会使用SMTP。客户端会使用以下两种应用层协议之一来检索邮件:POP 或 IMAP。
SMTP、POP 和 IMAP
SMTP
SMTP 邮件格式要求邮件具有报头和正文。虽然邮件正文没有长度限制,但邮件报头必须具有格式正确的收件人邮件地址和发件人地址。
当客户端发送邮件时,客户端 SMTP 进程会连接公认端口 25 上的服务器 SMTP
进程。连接建立后,客户端将尝试通过此连接发送邮件到服务器。服务器收到邮件后,如果收件人在本地,它会将邮件保存在本地账户中,或者将邮件转发给另一台邮件服务器以便传输。
发出邮件时,目的邮件服务器可能并不在线,或者正忙。因此,SMTP
将邮件转到后台处理,稍后再发送。服务器会定期检查邮件队列,然后尝试再次发送。经过预定义的过期时间后,如果仍然无法发送邮件,则会将其作为无法投递的邮件退回给发件人。
PoP
应用程序使用 POP 从邮件服务器中检索邮件。根据 POP 的规定,邮件将从服务器下载到客户端,然后从服务器上删除。这是 POP 的默认操作。
服务器通过在 TCP 端口 110 上被动侦听客户端连接请求来启动 POP 服务。当客户端要使用此服务时,它会发送一个请求来建立与服务器的 TCP 连接,如图所示。一旦建立连接,POP
服务器即会发送问候语。然后客户端和 POP 服务器会交换命令和响应,直到连接关闭或中止。
根据 POP,由于电子邮件会下载到客户端并从服务器删除,因此电子邮件不会集中保存在某一特定的位置。因为 POP 不存储邮件,因此不建议用于需要集中备份解决方案的小型企业。
POP3 是最常用的版本。
IMAP
IMAP 是另外一种用于检索电子邮件消息的协议。与 POP 不同的是,当用户连接使用 IMAP
的服务器时,邮件的副本会下载到客户端应用程序,如图所示。同时原始邮件会一直保留在服务器上,直到用户将它们手动删除。用户在自己的邮件客户端软件中查看邮件副本。
用户可以在服务器上创建文件层次结构来组织和保存邮件。该文件结构会照搬到邮件客户端。当用户决定删除邮件时,服务器会同步该操作,从服务器上删除对应的邮件。
3.4 域名解析系统DNS
域名解析:根据域名找IP地址
域名结构:顶级域名(国家顶级域名、通用顶级域名)、二级域名、三级域名和四级域名
服务器:根域名服务器、顶级域名服务器、权限域名服务器、本地域名服务器(不属于上面的层次结构)
DNS查询算法:递归查询、迭代查询(递归迭代查询相结合)
3.4.1 IP 编址服务
域名服务
还有其他应用层特定的协议,它们被设计可以更容易地获取网络设备的地址。这些服务是必不可少的,因为记住 IP 地址而不是 URL
或手动配置中大型网络中的所有设备将非常耗时。本模块的第一个主题为您介绍了这些协议。本主题将详细介绍 IP 编址服务、DNS 和 DHCP。
在数据网络中,使用数字 IP 地址标记设备以便通过网络发送和接收数据。人们创建了可以将数字地址转换为简单易记名称的域名系统。
在互联网上,更便于人们记忆的是 “http://www.cisco.com" 这样的完全限定域名,而不是该服务器的实际数字 IP 地址
198.133.219.25。如果思科决定更改 www.cisco.com 的数字地址,那么更改对用户是透明的,因为域名将保持不变。公司只需要将新地址与现有域名链接起来即可保证连通性。
DNS 协议定义了一套自动化服务,该服务将资源名称与所需的数字网络地址匹配。协议涵盖了查询格式、响应格式及数据格式。DNS 协议通信采用单一格式,即消息格式。该格式用于所有类型的客户端查
询和服务器响应、报错消息、以及服务器间的资源记录信息的传输。
以下展示域名解析过程:
步骤 1
用户在浏览器应用程序地址字段中输入 FQDN(Fully Qualified Domain Name,全限定域名)。
步骤 2
一个DNS 查询发送到客户端计算机的指定 DNS 服务器。
步骤 3
DNS 服务器将 FQDN 与其 IP 地址匹配。
步骤 4
DNS 查询响应将FQDN 的 IP 地址发送回客户端。
步骤 5
客户端计算机使用IP地址向服务器发出请求。
DNS 消息格式
DNS 服务器中存储不同类型的资源记录,用来解析域名。这些记录中包含域名、地址以及记录的类型。这些记录有以下类型:
-
A - 终端设备 IPv4 地址
-
NS - 授权域名服务器
-
AAAA - 终端设备 IPv6 地址(读作“四 A”)
-
MX - 邮件交换记录
在客户端进行查询时,服务器 DNS
进程首先会查看自己的记录以解析名称。如果服务器不能通过自身存储的记录解析域名,它将联系其他服务器对该域名进行解析。在检索到匹配信息并将其返回到原始请求服务器后,服务器临时存储数字地址,以供再次请求同一域名时使用。
Windows PC 上的 DNS 客户端服务还可存储以前在内存中解析的域名。ipconfig /displaydns命令显示所有 DNS 缓存条目。
如表中所示,DNS在服务器间使用相同的消息格式,包含所有类型的客户端查询的问题、回答、授权和更多信息以及服务器响应、错误消息和服务器间的资源记录信息的传输。
DNS 消息部分 | 描述 |
---|---|
问题 | 向域名服务器提出的问题 |
回答 | 回答该问题的资源记录 |
权限(Authority) | 指向权限的资源记录 |
更多 | 包含其他信息的资源记录 |
DNS 层级
DNS 协议采用分层系统创建数据库以提供名称解析,如图所示。DNS 使用域名来划分层次。
域名结构被划分为多个更小的受管域。每台 DNS 服务器维护着特定的数据库文件,而且只负责管理 DNS 结构中那一小部分的“域名-IP”映射。当 DNS 服务器收到的域名转换请求不属于其所负责的 DNS
区域时,该 DNS 服务器可将请求转发到与该请求对应的区域中的 DNS 服务器进行转换。DNS 具有可扩展性,这是因为主机名解析分散于多台服务器上完成。
不同的顶级域有不同的含义,分别代表着组织类型或起源国家/地区。请参见以下顶级域示例:
-
.com - 商业或行业
-
.org - 非营利组织
-
.cn - 中国
3.5 动态主机配置协议(DHCP)
IPv4 服务的动态主机配置协议 (DHCP) 会自动分配 IPv4 地址、子网掩码、网关以及其他 IPv4
网络参数。这称为动态编址。动态编址的替代选项是静态编址。在使用静态编址时,网络管理员在主机上手动输入 IP 地址信息。主机连入网络时,将联系 DHCP 服务器并请求地址。DHCP 服务器从已配置地址范围(也称为“地址池”)中选择一条地址,并将其分配(租赁)给主机。
在较大型的网络中,或者用户经常变更的网络中,地址分配优先选用 DHCP。新用户可能在到达时需要连接;其他用户可能有新计算机必须要连接。与为每个连接使用静态编址的做法相比,采用 DHCP 自动分配IPv4 地址的方法更有效。
DHCP可以在一段可配置的时间内分配IP地址,这段时间称为租期。租期是一个重要的 DHCP 设置,当租期过期或 DHCP 服务器收到 DHCPRELLAME 消息时,地址将返回到 DHCP池以便重复使用。因此,用户可以自由的移动位置,并通过DHCP随时重新连接网络。
如图所示,很多类型的设备都可以成为 DHCP 服务器。在大多数中型到大型网络中,DHCP 服务器通常都是基于 PC 的本地专用服务器。在家庭网络中,DHCP 服务器通常位于本地路由器,将家庭网络连接到ISP。
很多网络都同时采用 DHCP 和静态编址。DHCP 用于一般用途主机,例如用户终端设备。静态编址用于网络设备,例如网关路由器、交换机、服务器和打印机。
IPv6 的 DHCP(DHCPv6)为 IPv6 客户端提供类似服务。一个重要的不同是,DHCPv6 不会提供默认网关地址。这只能从路由器的 RouterAdvertisement(路由器通告)消息中动态获得。
3.5.1 DHCP 工作原理
如图所示,配置了 DHCP 的 IPv4 设备在启动或连接到网络时,客户端将广播一条 DHCP 发现 (DHCP-DISCOVER) 消息以确定网络上是否有可用 DHCP 服务器。DHCP 服务器回复DHCP 服务 (DHCP-OFFER) 消息,为客户端提供租赁服务。该服务消息包含为其分配的 IPv4 地址和子网掩码、DNS 服务器的 IPv4 地址和默认网关的 IPv4地址。租赁服务还包括租用期限。
如果本地网络中有超过一台 DHCP 服务器,客户端可能会收到多条 DHCPOFFER 消息。此时,客户端必须在这些服务器中进行选择,并且将包含服务器标识信息及客户端所接受的租赁服务的 DHCP请求 (DHCP-REQUEST) 消息发送出去。客户端还可选择向服务器请求分配以前分配过的地址。如果客户端请求的 IPv4 地址(或者服务器提供的 IPv4 地址)仍然可用,服务器将返回 DHCP 确认 (DHCP-PACK)消息,向客户端确认地址租赁。如果请求的地址不再有效,则所选服务器将回复一条 DHCP 否定确认 (DHCP-PNAK) 消息。一旦返回 DHCP NAK 消息,应重新启动选择进程,并重新发送新的 DHCP发现消息。客户端租赁到地址后,应在租期结束前发送 DHCPREQUEST 消息进行续期。
DHCP 服务器确保每个 IP 地址都是唯一的(一个 IP 地址不能同时分配到不同的网络设备上)。因此,大多数ISP往往使用 DHCP 为其客户分配地址。DHCPv6 有一组与DHCPv4 类似的消息。DHCPv6 消息包括 SOLICIT、ADVERTISE、INFORMATION REQUEST 和 REPLY。
3.6 文件共享服务(FTP协议)
FTP协议:是基于客户/服务器模型的协议
用户操作:用户通过一个客户机程序连接至远程计算机上运行的服务器程序
FTP服务器:依照FTP协议提供服务,进行文件传送的计算机就是FTP服务器
FTP客户端:连接FTP服务器,遵循FTP协议与服务器传送文件的电脑就是FTP客户端
文件传输协议
正如您在前面的主题中了解到的,在客户端/服务器模式中,如果两个设备都使用文件传输协议(FTP),客户端可以将数据上传到服务器,并从服务器下载数据。与 HTTP、电子邮件和编址协议一样,FTP是常用的应用层协议。本主题将更详细地讨论 FTP。
FTP 用于客户端和服务器之间的数据传输。FTP 客户端是一种在计算机上运行的应用,用于从 FTP 服务器中收发数据。该图描绘了一个 FTP传输。客户端通过网络与服务器联系。来自客户端的第一条消息是控制连接:客户端向服务器开放第一条连接,用于控制流量。来自客户端的第二条消息是数据连接:客户端开放第二个连接用于流量数据。客户端使用“获取数据” 命令从服务器请求数据。
客户端使用 TCP 端口 21 与服务器建立第一个连接用于控制流量。流量由客户端命令和服务器应答组成。
客户端使用 TCP 端口 20 与服务器建立第二个连接用于实际数据传输。每当有数据需要传输时都会建立此连接。
数据传输可以在任何一个方向进行。客户端可以从服务器下载(取)数据,也可以向服务器上传(放)数据。
4. 总结
- 应用层、表示层和会话层
在OSI和TCP/IP
模型中的应用层最接近最终用户。应用层协议用于在源主机和目的主机上运行的程序之间进行数据交换。表示层有三个主要功能:将源设备上的数据格式化或呈现为目标设备可接收的兼容格式、以目的设备可解压的方式压缩数据、对数据进行加密以便在接收时进行传输和解密。会话层用于创建并维护源应用程序和目的应用程序之间的对话。会话层用于处理信息交换,发起对话并使其处于活动状态,并在对话中断或长时间处于空闲状态时重启会话。TCP/IP
应用层协议指定了许多常见互联网通信功能必需的格式和控制信息。在会话过程中,源设备和目的设备均使用这些协议。在源和目的主机上实现的该协议必须是兼容的。
- 对等体到对等体
在客户端/服务器模式中,请求信息的设备称为客户端,而响应请求的设备称为服务器。客户端首先向服务器发送数据请求,服务器通过发送一个或多个数据流来响应客户端。在 P2P
网络中,两台或多台计算机通过网络互连,它们共享资源时可以不借助专用服务器。每台对等体既可以作为服务器,也可以作为客户端。在某项事务中,作为服务器的计算机也可以同时成为其他服务器的客户端。P2P
应用程序要求每台终端设备提供用户界面并运行后台服务。某些 P2P 应用程序中采用混合系统,即共享的资源是分散的,但指向资源位置的索引存储在集中目录中。许多 P2P
应用程序允许用户同时相互分享文件片段。客户端使用一个称作 torrent 文件的小型文件查找其他拥有其所需片段的用户,以便可以直接连接到他们。此文件也包含跟踪计算机的信息,跟踪哪些用户有哪些文件片段。
- Web和电子邮件协议
当在 Web 浏览器中输入一个 Web 地址或URL时,Web 浏览器将与Web 服务建立连接。Web 服务正在使用 HTTP 协议的服务器上运行。HTTP 是一种请求/响应协议。当客户端,尤其是
Web 浏览器,发送请求到 Web 服务器时,HTTP 将指定用于该通信的消息类型。常用的三种消息类型包括 GET、POST 和 PUT。为了跨互联网的安全通信,HTTPS
使用的客户端请求服务器响应过程与 HTTP 相同,但在数据流通过网络传输以前会使用SSL加密。电子邮件支持三种单独的协议以实现操作:SMTP、POP 和IMAP。发送邮件的应用层进程会使用
SMTP。客户端使用 POP 或 IMAP 检索电子邮件。SMTP 邮件格式要求邮件具有报头和正文。邮件正文没有长度限制,但邮件报头必须具有格式正确的收件人邮件地址和发件人地址。应用程序使用 POP
从邮件服务器中检索邮件。根据 POP 的规定,邮件将从服务器下载到客户端,然后从服务器上删除。与 POP 不同,使用IMAP时,当用户连接使用 IMAP
的服务器时,邮件的副本会下载到客户端应用程序。同时原始邮件会一直保留在服务器上,直到用户将它们手动删除。
- IP编址服务
DNS 协议将资源名称与所需的数字网络地址匹配。DNS协议通信对所有类型的客户端查询和服务器响应、报错消息、以及服务器间的资源记录信息的传输使用消息格式。DNS 使用域名来划分层次。每台 DNS
服务器维护着特定的数据库文件,而且只负责管理 DNS 结构中那一小部分的“域名-IP”映射。计算机操作系统使用Nslookup允许用户手动查询域名服务器来解析特定主机名。IPv4的DHCP服务自动分配
IPv4 地址、子网掩码、网关以及其他 IPv4 网络参数。DHCPv6 为 IPv6 客户端提供类似的服务,但不提供默认网关地址。配置了 DHCP 的 IPv4
设备在启动或连接到网络时,客户端将广播一条 DHCPDISCOVER 消息以确定网络上是否有可用的 DHCP 服务器。DHCP 服务器回复DHCPOFFER消息,为客户端提供租赁服务。DHCPv6
有一组与DHCPv4 类似的消息。DHCPv6 消息包括 SOLICIT、ADVERTISE、INFORMATION REQUEST 和 REPLY。
- 文件共享服务
FTP 客户端是一种在计算机上运行的应用,用于从 FTP 服务器中收发数据。客户端建立与服务器的第一个连接,用于使用 TCP 端口 21 控制流量。客户端使用 TCP 端口 20
与服务器建立第二个连接用于实际数据传输。客户端可以从服务器下载(取)数据,也可以向服务器上传(放)数据。以下是SMB消息的三个功能:启动、认证和终止会话、控制文件和打印机访问,并允许应用向其他设备发送消息或从其他设备接收消息。与
FTP 协议支持的文件共享不同,SMB 协议中的客户端要与服务器建立长期连接。一旦建立连接,客户端用户就可以访问服务器上的资源,就如同资源位于客户端主机上一样。
本文到这里就结束啦~~
目前已完成:
【网络>计算机网络】第一章·网络>计算机网络入门-CSDN博客
【网络>计算机网络】第三章·数据链路层与局域网/广域网-CSDN博客
期待您的关注~~🥰🥰
猫猫陪你永远在路上💪💪
如果觉得对你有帮助,辛苦友友点个赞哦~