计算机网络原理【总学习笔记】
文章目录
网络应用1.计算机网络应用体系结构2.网络应用通信基本原理3.域名系统(DNS)4.万维网应用5.Internet电子邮件6.FTP7.P2P应用8.Socket编程基础网络应用
1.计算机网络应用体系结构
三种类型:
客户/服务器(C/S)结构
最主要的特征是通信只在客户与服务器之间进行,客户与客户之间不进行直接通信。P2P (Peer to Peer)结构
每个对等端都同时具备C/S应用的客户与服务器的特征,是一个服务器与客户的结合体,对等端之间直接通信。混合结构
既有中心服务器的存在,又有对等端(客户)间的直接通信。
2.网络应用通信基本原理
C/S通信基本原理:服务器端运行的是服务器进程,被动地等待客户请求服务;客户端运行的是客户进程,主动发起通信,请求服务器进程提供服务。应用进程间遵循应用层协议交换应用层报文。
3.域名系统(DNS)
层次化域名空间层次树状结构的命名方法: 国家顶级域名nTLD;通用顶级域名gTLD;基础结构域名。
域名服务器 域名解析:
将域名映射为IP地址的过程。域名服务器
为了实现域名解析,需要建立分布式数据库,存储网络中域名与IP地址的映射关系数据,这些数据库存储在域名服务器上,域名服务器根据用户的请求提供域名解析服务。域名服务器分类:
根域名服务器
顶级域名服务器
权威域名服务器
本地域名服务器 域名解析过程 递归查询
代替查询主机或其他域名服务器,进行进一步的域名查询,并将最终解析结果发送给查询主机或服务器。
迭代查询
只是将下一步要查询的服务器告知查询主机或服务器。
4.万维网应用
万维网应用结构HTTP
概念:超文本传输协议,定义浏览器如何向Web服务器发送请求以及Web服务器如何向浏览器进行响应。
版本:HTTP/1.0和HTTP/1.1
HTTP连接:非持久连接,持久连接
HTTP报文∶
请求报文 —— 从客户向服务器发送请求报文。
响应报文 —— 从服务器到客户的回答。
请求报文的一些方法
HTTP状态码分类
Cookie
Cookie中文名称为小型文本文件,指某些网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据。
弥补了HTTP协议无状态性的不足,有利于进行用户跟踪并提供针对性的服务,但也带来一些安全问题。 Cookie工作原理
5.Internet电子邮件
电子邮件系统结构
电子邮件系统主要包括邮件服务器、简单邮件传输协议(SMTP)、用户代理和邮件读取协议等。
SMTP
SMTP是Internet电子邮件中核心应用层协议,实现邮件服务器之间或用户代理到邮件服务器之间的邮件传输。
SMTP使用传输层TCP实现可靠数据传输,端口号25。
SMTP通过3个阶段的应用层交互完成邮件的传输,分别是握手阶段、邮件传输阶段和关闭阶段。
SMTP的基本交互方式是SMTP客户端发送命令,命令后面可能携带参数,SMTP服务器对命令进行应答。
SMTP协议示例
电子邮件格式与MIME
电子邮件包括首部、空白行、主体3部分。
To,Subject , Cc ,From ,Date,Reply-To等关键词。MIME (多用途互联网邮件扩展)
将非7位ASCII码文本内容转换为7位ASCII码文本内容,然后再利用SMTP进行传输。
在邮件首部增加MIME首部行,说明主体内容原本的数据类型以及采用的编码标准等。
邮件读取协议
第三版的邮局协议
(Post Office Protocol-Version 3 , POP3)互联网邮件访问协议
(Internet Mail Access Protocol IMAP)HTTP
6.FTP
文件传送协议(FTP):在互联网的两个主机间实现文件互传的应用层协议。
C/S模式,采用**控制连接(21端口)**传输控制命令,**数据连接(20端口)**传输文件内容。
7.P2P应用
P2P应用的优势:充分聚集利用了端系统(对等方主机)的计算能力以及网络传输带宽,对服务器的依赖很小。
8.Socket编程基础
Socket接口模型:
网络应用进程通信时需要通过API接口请求底层协议的服务。可以创建数据报类型套接字SOCK_DGRAM、流式套接字SOCK STREAM和原始套接字SOCK_RAW。
UDP:无连接服务,成本低,效率高,但不可靠
TCP:效率相对较低,可靠性高
基于TCP的Socket编程
基于UDP的Socket编程
网络应用 1.计算机网络应用体系结构 2.网络应用通信基本原理 3.域名系统(DNS)4.万维网应用 5.Internet电子邮件 6.FTP 7.P2P应用 8.Socket编程基础