TCP/IP网络层级结构及其应用服务(二)

2023-12-09 06:18

本文主要是介绍TCP/IP网络层级结构及其应用服务(二),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

4.Internet最常用的几个服务

远程登录(Telnet

远程登陆Telnet:远程, 登录,仿真终端,共享工具。

远程登陆Telnet是一个简单的远程终端协议。

用户用Telnet就可以在所在地通过TCP连接(即登录)到远地的另一台主机上(使用主机名或IP地址)。有两种登录命令,telnetrelogin(Berkeley UNIX而开发的)

如:telnet bbs.zsu.edu.cn, (中山大学BBS

telnet smth.org (清华BBS

Telnet也使用客户/服务器模式

Telnet功能

Telnet在功能上,是模拟成远端一部电脑系统的终端机,称为网络虚拟终端NVTNetwork virtual Terminal),通过网络连线载入该电脑系统,可以执行该电脑系统的任何程序。

Telnet的工作原理

客户端运行Telnet

建立与服务器端的TCP连接

接收用户的输入命令及其他信息;

将命令及信息处理;

将相关信息通过TCP 发送给服务器端;

接收服务器端返回的信息并做相应处理如显示。

服务器端不间断地运行服务程序Telnetd

通知正在准备接受连接的网络软件,服务作业已进入就续状态;

网络软件建立与客户机的TCP连接;

等候以标准格式出现的服务请求;

对到来的服务请求命令给予执行;

把服务结果按标准格式回送给客户机;

继续等待服务。

电子邮件(Email

电子邮件(Email):电子邮件的收发, 编辑和处理

电子邮件是最流行的Internet应用。电子邮件是人们在Internet上最先使用的服务。

电子邮件系统有它自己的独特之处:方便性,快捷性,廉价性

1982年制定了简单邮件传输协议SMTP(Simple Mail Transfer Protocol),只能传送ASCII文件。

1993年制定了新的电子邮件标准通用Internet邮件扩充MIMEmultipurpose Internet Mail Extensions),能传送文本,声音,图像等。

1993年制定了允许用户对电子邮件信箱进行远程存取的协议POP(Post Office Protocol).它是专门开发来适应用户代理和邮件服务器分开这种新的需求的。

电子邮件的主要构件

用户代理(UAUser Agent)又称为邮件阅读器:编辑、发送、阅读和管理电子邮件。

传输代理(MTA Message Transfer Agent)又称为邮件服务器:起邮局作用,接收用户邮件,根据地址传输,传送到接收方的邮件服务器,并将邮件存放在用户邮箱内。

电子邮件工作模式

邮件服务器之间采用存储转发的工作方式

邮件服务器之间是通过简单邮件传输协议(SMTP)进行对话,TCP端口号为25

发送邮件时,邮件阅读器就通过和邮件服务器建立SMTP连接,将编辑好的邮件发给邮件服务器;

读取邮件时,邮件阅读器则和邮件服务器通过建立POP连接,将邮件从邮件服务器上读取到本地计算机上。

文件传输(FTP

文件传输:数据互传。

TCP/IP的一个重要的应用是文件的传送。目前有三个主要的协议能用来把文件从一个主机传送到另一个主机:

文件传送协议FTP(File Transfer Protocol)

简单文件传送协议TFTP(Trivial File Transfer Protocol)

网络文件系统NFS(Network File System)

文件传送协议(FTP)

文件传送协议FTPInternet上使用得最广泛的文件传送协议。FTP的主要目的是允许文件从一个主机传送到另一个主机。

FTP是基于TCP协议的文件传输。与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。

FTP所提供的服务

FTP 功 能

说 明

Open-Close Connection

(打开-关闭连接)

在开始一个本地应用之后,用户能打开或关闭一个FTP连接。

Direction Control
FTP
所提供的服务(目录控制)

FTP连接中,操作者可以改变、列出以及打印文件目录。

Mode Change
(模式变换)

根据文件格式,可以使用不同的文件传送模式.文本文件(ASCII),二进文件(Binary), 压缩、非压缩文件。

Get-Put File Transfer

(接收-发送文件)

在两个方面都可以进行单个或多个文件的传送,并具有监视选项。上载(Upload)用Put,下载(Download)用Get

Delete File (删除文件)

用来删除远程文件。

Help and Information

(帮助信息)

终端用户可以获得连机帮助以及本地记帐信息。

FTP的两种用户类型:

指定用户:用户ID(userid)和口令(password)

匿名用户(anonymous user):用户ID必须是 anonymous

FTP的主要工作原理

简单文件传送协议TFTP

简单文件传送协议TFTP(Trivial File Transfer Protocol) 是一个很小且易于实现的文件传送协议。

简单文件传送协议TFTP的优点是:

Ø TFTP可用于UDP环境。

Ø TFTP代码所占的内存较小。

简单文件传送协议TFTP的主要特点是:

Ø 每次传送的数据PDU中有512字节的数据,但最后一次可不足512字节;

Ø 数据PDU也称为文件块,每个块按序编号,从1开始。

Ø 支持ASCII码或二进制传送。

Ø 可对文件进行读或写。

Ø 使用很简单的首部。

TFTP的工作原理

TFTP的工作很像停止等待协议。发送完一个文件块后就等待对方的确认。发完数据后在规定时间内收不到确认就要重发数据PDU。发送确认的一方若在规定时间内收不到下一个文件块,也要重发确认PDU。这样就可保证文件的传送不致因某一个数据报的丢失而告失败。

网络文件系统NFS(Network File System)

网络文件系统NFS的主要特点

网络文件系统NFS 除了实现文件和目录共享外,还允许应用进程打开一个远地文件,并能够在该文件的某一个特定的位置上开始读写数据。

远程过程调用RPC

NFS由三个独立的部分组成,即:NFS协议本身,通用的远程过程调用RPC(Remote Procedure Call ),通用的外部数据表示XDR(eXternal Data Representation)
RPC
的组成:任何RPC系统都有一些主要的操作元素,包括:

Ø 客户主应用程序

Ø 协议语言(Protocol Language)

Ø 协议编译器(Protocol Compiler)

Ø 客户存根(stub)过程

Ø 服务器(存根)程序

Ø 服务器过程

Ø 数据表示标准

Ø 目录服务

万维网WWW(World Wide Web

万维网WWW:分布式超媒体链接HTML

什么是WWW

Ø 万维网并不是一个特殊的计算机网络,而是一个大规模、联机式的信息储藏所

Ø 万维网是一个分布式的超媒体系统,它是超文本系统的扩充。分布是指万维网将各种信息分布在整个Internet上,而不是驻留在单个计算机的磁盘中。

Ø 万维网以客户机服务器方式工作。浏览器就是在用户计算机上的万维网客户程序,万维网文档所驻留的计算机则运行服务器程序。

Ø 万维网用链接的方法能非常方便地从因特网上的一个站点访问另一个站点,从而主动地按需获取丰富的信息。

Ø 万维网通过链接提供分布式服务

万维网必须解决的问题

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

Ø 使用统一资源定位符 URL (Uniform Resource Locator)来标志万维网上的各种文档。

Ø 使每一个文档在整个因特网的范围内具有惟一的标识符 URL

(2) 用何协议实现万维网上各种超链的链接?

Ø 在万维网客户程序与万维网服务器程序之间进行交互所使用的协议,是超文本传送协议 HTTP (HyperText Transfer Protocol)

Ø HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送。

(3) 怎样使各种万维网文档都能在因特网上的各种计算机上显示出来,同时使用户清楚地知道在什么地方存在着超链?

Ø 超文本标记语言 HTML (HyperText Markup Language)使得万维网页面的设计者可以很方便地用一个超链从本页面的某处链接到因特网上的任何一个万维网页面,并且能够在自己的计算机屏幕上将这些页面显示出来。

(4) 怎样使用户能够很方便地找到所需的信息?

Ø 为了在万维网上方便地查找信息,用户可使用各种的搜索工具(即搜索引擎)。

统一定位资源URL(Uniform Resource Locator)

Ø 万维网使用统一定位资源URL来标识万维网上的各种文档,并使每一个文档在整个Internet范围内具有唯一的标识符URL

Ø URL是与Internet相连的机器上的任何可访问对象的一个指针。

Ø URL的一般形式如下:

<URL的访问方式>://<主机>:<端口>/<路径>

ftp —— 文件传送协议 FTP

http —— 超文本传送协议 HTTP

News —— USENET 新闻

超文本传送协议HTTP(HyperText Transfer Protocol)

当用户用鼠标点击了屏幕上的一个连接,URLhttp://www.w3.org/protocols/HTTP-NG/Activity.html 时,所发生的事件:

Ø 浏览器分析链接指向页面的URL

Ø 浏览器向DNS请求解析www.w3.orgIP地址。

Ø DNS解析出服务器的IP地址为18.23.0.23

Ø 浏览器与服务器建立TCP连接(18.23.0.23使用端口80

Ø 浏览器发出取文件命令:GET /Protocols/HTTP-NG/Activity.html

Ø www.w3.org服务器给出响应,将文件Activity.html发送给浏览器。

Ø TCP连接释放。

Ø 浏览器显示文件Activity.html中的所有文件。

图:基于HTTP协议的客户/服务器模式的信息交换过程

HTTP协议下客户/服务器模式中信息交换的实现

Ø 建立连接:连接的建立是通过申请套接字(Socket)实现的。客户打开一个套接字并把它约束在一个端口上,如果成功,就相当于建立了一个虚拟文件。以后就可以在该虚拟文件上写数据并通过网络向外传送。

Ø 发送请求:打开一个连接后,客户机把请求消息送到服务器的停留端口上,完成提出请求动作。请求消息的格式见请求报文。

Ø 发送响应:服务器在处理完客户的请求之后,要向客户机发送响应消息。响应消息格式见响应报文。

Ø 关闭连接:客户和服务器双方都可以通过关闭套接字来结束TCP/IP对话

HTTP的两类报文:从客户到服务器的请求报文和从服务器到客户的响应报文。

新闻组(Newsgroup):提供新闻、信息、交谈、评论等信息资源

电子广告牌BBS(Bulletin Board System): 信息发布、谈天交流、分类讨论,可用Telnet或浏览器(IE)访问BBS

交谈工具,icq,talk 以计算机网络为传输媒体,进行实时交谈。

广域信息系统(WAISWide Area Information Services:WAIS是一个分布式文本搜索系统,WAIS信息库内容丰富,涉及面广,从各类文档到各类专业文档库

这篇关于TCP/IP网络层级结构及其应用服务(二)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/472778

相关文章

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

Linux网络配置之网桥和虚拟网络的配置指南

《Linux网络配置之网桥和虚拟网络的配置指南》这篇文章主要为大家详细介绍了Linux中配置网桥和虚拟网络的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、网桥的配置在linux系统中配置一个新的网桥主要涉及以下几个步骤:1.为yum仓库做准备,安装组件epel-re

Python+PyQt5实现文件夹结构映射工具

《Python+PyQt5实现文件夹结构映射工具》在日常工作中,我们经常需要对文件夹结构进行复制和备份,本文将带来一款基于PyQt5开发的文件夹结构映射工具,感兴趣的小伙伴可以跟随小编一起学习一下... 目录概述功能亮点展示效果软件使用步骤代码解析1. 主窗口设计(FolderCopyApp)2. 拖拽路径

python如何下载网络文件到本地指定文件夹

《python如何下载网络文件到本地指定文件夹》这篇文章主要为大家详细介绍了python如何实现下载网络文件到本地指定文件夹,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下...  在python中下载文件到本地指定文件夹可以通过以下步骤实现,使用requests库处理HTTP请求,并结合o

SpringBoot快速搭建TCP服务端和客户端全过程

《SpringBoot快速搭建TCP服务端和客户端全过程》:本文主要介绍SpringBoot快速搭建TCP服务端和客户端全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录TCPServerTCPClient总结由于工作需要,研究了SpringBoot搭建TCP通信的过程

Linux高并发场景下的网络参数调优实战指南

《Linux高并发场景下的网络参数调优实战指南》在高并发网络服务场景中,Linux内核的默认网络参数往往无法满足需求,导致性能瓶颈、连接超时甚至服务崩溃,本文基于真实案例分析,从参数解读、问题诊断到优... 目录一、问题背景:当并发连接遇上性能瓶颈1.1 案例环境1.2 初始参数分析二、深度诊断:连接状态与

Java根据IP地址实现归属地获取

《Java根据IP地址实现归属地获取》Ip2region是一个离线IP地址定位库和IP定位数据管理框架,这篇文章主要为大家详细介绍了Java如何使用Ip2region实现根据IP地址获取归属地,感兴趣... 目录一、使用Ip2region离线获取1、Ip2region简介2、导包3、下编程载xdb文件4、J

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服