UNIX/Linux网络编程基础:应用层协议简介

目录

1、HTTP协议

2、FTP协议

3、TELNET协议

4、NFS协议

1、HTTP协议

应用层协议HTTP协议是Web的核心。HTTP协议在Web的客户程序和服务器程序中得以实现,运行在不同系统上的客户程序和服务器程序通过交换HTTP消息彼此通信。HTTP协议定义数据格式,使得服务器和客户端通过协议进行数据交流。

客户端和服务器交流的基本内容:Web页面(web page,也称为文档)。

Web页面由多个对象构成,对象(object)是可由URL进行寻址的文件,例如HTML文件、JPG图像、Java小应用程序、语音片段等。

Web页面大多数由一个基本的HTML文件和很多HTML文件中所引用的对象构成。这个基本的HTML文件使用文件中的内置URL来引用本页面中所使用的其他对象。

一个URL由两部分构成:存放该对象的服务器主机名和该对象的路径名。例如,在如下的URL中:

image

HTTP建立在TCP协议基础之上,其默认端口是TCP协议的80端口。

HTTP协议的基本过程:

UNIX/Linux网络编程基础:应用层协议简介_第1张图片

 

2、FTP协议

FTP(File Transfer Protocol),是一种从一个主机向另一个主机传送文件的协议。

UNIX/Linux网络编程基础:应用层协议简介_第2张图片

FTP协议也是建立在TCP协议之上,但与HTTP协议有很大的差别,最主要的是FTP协议使用两个并行的TCP连接来传送文件,一个是控制连接,另一个是数据连接。

控制连接用于在客户端和服务器端之间传送控制信息(通常称之为FTP的带外数据,即控制信息是不包含在FTP协议的数据连接之中的),例如用户名和密码、改变目录、上传或下载文件的命令等。

数据连接用于真正收发数据。

UNIX/Linux网络编程基础:应用层协议简介_第3张图片

UNIX/Linux网络编程基础:应用层协议简介_第4张图片

FTP协议的工作模式分为主动模式和被动模式,二者主要区别在于对数据端口的处理方式不同:主动模式在客户端连接后,告诉服务器数据连接的端口;被动模式在客户端连接后,进行数据传输的时候临时连接FTP服务器的20端口,利用此端口进行数据的传输。

FTP协议的传输方式:ASCII传输模式和二进制传输模式。二者的区别主要在于是否对数据进行了解释。ASCII模式会对数据进行解释;二进制模式则逐位一一复制。

3、Telnet协议

Telnet协议是最早出现的远程登录协议之一,使用Telnet协议可以在本机上登录到远程的计算机上进行一些操作。

远程登录是指用户使用telnet命令,使自己的计算机暂时成为远程主机的一个仿真终端的过程。

关于telnet的配置和使用可参考http://www.cnblogs.com/nufangrensheng/p/3488122.html

4、NFS协议

NFS协议是一种用于文件共享的协议,它可以使得主机之间进行文件的共享。客户端可以像在本机上的文件一样操作远程主机的文件。

NFS协议是一个十分简单的协议,它本身没有提供信息传输的协议和功能。之所以NFS能够让主机之间通过网络进行资料共享,这是因为NFS使用了一些其他传输协议,主要用到了RPC(Remote Procedure Call)功能。所以在启动NFS服务器的时候需要启动RPC服务

关于NFS服务器配置可参考http://www.cnblogs.com/nufangrensheng/p/3486839.html

你可能感兴趣的:(linux)