计算机网络(第二章,网络应用(上))

这是本人初学《计算机网络》做的一些笔记,随着深入理解与学习,会对笔记进行改进

网络应用(层)内容概述

这讲的主要内容有:

网络应用体系结构
{ 客 户 机 / 服 务 器 P 2 P 混 合 结 构 \begin{cases} 客户机/服务器 \\ P2P \\ 混合结构 \end{cases} /P2P

网络应用的服务请求
{ 可 靠 性 带 宽 时 延 \begin{cases} 可靠性 \\ 带宽 \\ 时延 \end{cases}

Internet传输层服务模型
{ T C P U D P \begin{cases} TCP \\ UDP \end{cases} {TCPUDP

特定网络应用及协议
{ H T T P S M T P , P O P , I M A P D N S P 2 P 应 用 \begin{cases} HTTP \\ SMTP,POP,IMAP \\ DNS \\ P2P应用 \end{cases} HTTPSMTP,POP,IMAPDNSP2P

Socket编程
{ T C P U D P \begin{cases} TCP \\ UDP \end{cases} {TCPUDP

网络应用的基本原理

网络应用体系结构

网络应用的体系结构 { 客 户 机 / 服 务 器 结 构 ( C l i e n t − S e r v e r , C / S ) 点 对 点 结 构 ( P e e r − t o − P e e r , P 2 P ) 混 合 结 构 ( H y b r i d ) \begin{cases} 客户机/服务器结构(Client-Server,C/S) \\ 点对点结构(Peer-to-Peer,P2P)\\ 混合结构(Hybrid) \end{cases} /ClientServerC/SPeertoPeerP2PHybrid

客户机服务器结构:

服务器:
7*24小时提供服务
永久性访问地址/域名
利用大量服务实现可扩展性

客户机:
与服务器通信,使用服务器提供的服务
间歇性接入网络
可能使用动态IP地址
不会与其他客户机直接通信

在这里插入图片描述
纯P2P结构:

没有永远在线的服务器
任意端系统/节点之间可以直接通讯
节点间歇性接入网络
节点可能改变IP地址

优点:高度可伸缩
缺点:难于管理

混合结构:

文件传输使用P2P结构
文件的搜索采用C/S结构——集中式(每个节点向中央服务器登记自己的内容;每个节点向中央服务器提交查询请求,查找感兴趣的内容)

网络应用进程通信

套接字:Socket

进程间通信利用Socket发送/接收消息实现
类似于寄信:发送方将消息发送到门外的邮箱;发送方依赖(门外的)传输基础设施将消息传到接收方所在主机,并送到接收方的门外;接收方送门外获取消息

传输基础设施向进程提供API:传输协议的选择;参数的设置

进程的标识符:IP地址+端口号(“IP地址:端口号”的格式)

网络层应用需要遵守应用层协议
应 用 层 协 议 { 公 开 协 议 : 由 R F C ( R e q u e s t F o r C o m m e n t s ) 定 义 ; 允 许 互 操 作 ; H T T P , S M T P . . . . . . 私 有 协 议 : 多 数 P 2 P 文 件 共 享 应 用 应用层协议\begin{cases} 公开协议:由RFC(Request For Comments)定义;允许互操作;HTTP,SMTP...... \\ 私有协议:多数P2P文件共享应用 \end{cases} {RFCRequestForCommentsHTTPSMTP......P2P

应用层协议的内容:
消息的类型:请求消息;响应消息
消息的语法/格式:消息中有哪些字段;每个字段如何描述
字段的语义:字段中信息的含义
规则:进程何时发送/响应消息;进程如何发送/响应消息

网络应用需求

网络应用对传输服务的需求:
数据丢失/可靠性:某些网络应用能够容忍一定的数据丢失(网路电话);某些网络应用要求100%可靠的数据传输(文件传输,telnet)
时间/延迟:有些应用只有在延迟足够低才有效(网络电话,网络游戏)
带宽:某系应用只有在带宽达到最低要求时才有效(网络视频);某些应用能够适应任何带宽——弹性应用(email)

Internet提供的传输服务:

TCP服务
面向连接:客户机/服务器进程间需要建立连接
可靠的输出
流量控制:发送方不会发送速度过快,超过接收方的处理能力
拥塞控制:当网络负载过重时能够限制发送方的发送速度
不提供时间/延迟保障
不提供最小带宽保障

UDP服务
无连接
不可靠的数据传输
不提供:可靠性保障,流量控制,拥塞控制,延迟保障,贷款保障

Web应用

Web应用概述

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

HTTP协议概述(1):
超文本传输协议;C/S结构(客户:请求、接收、展示Web对象;服务器:响应客户的请求,发送对象);HTTP版本(1.0:RFC1945;1.1:RFC2068)

HTTP概述(2):
使用TCP传输服务:服务器在80端口等待客户的请求;浏览器发起到服务器的TCP连接(创建套接字Socket);服务器接受来自浏览器的TCP连接;浏览器(HTTP客户端)与Web服务器(HTTP服务器)交换HTTP消息;关闭TCP连接
无状态:服务器不维护任何有关客户端过去所发请求的信息

HTTP连接类型

HTTP连接的两种类型:
1.非持久性连接:每个TCP连接最多允许传输一个对象;HTTP1.0版本使用非持久性连接
2.持久性连接:每个TCP连接允许传输多个对象;HTTP1.1版本默认使用持久性连接

RTT(Round Trip Time):从客户端发送一个很小的数据包到服务器并返回所经历的时间

HTTP消息格式

HTTP协议有两类消息:请求消息,响应消息

方法的类型:
HTTP1.0:GET,POST,HEAD
HTTP1.1:GET,POST,HEAD,PUT,DELETE

HTTP响应状态码:
200 OK
301 Moved Permanently
400 Bad Request
404 Not found
505 HTTP Version Not Supported

Cookie技术

Cookie技术:某些网站为了辨别用户身份,进行session跟踪而存储在用户本地终端上的数据(通常经过加密)

Cookie组件:HTTP响应消息的cookie头部行;HTTP请求消息的cookie头部行;保存在客户端主机主机上的cookie文件,由浏览器管理;Web服务器端的后台数据库

Web缓存技术

功能:在不访问服务器的前提下满足客户端的HTTP请求

好处:缩短客户请求的响应时间;减少机构/组织的流量;在大范围实现有效的内容分发
在这里插入图片描述

Email应用

Email应用概述

Email应用的构成组件:邮件客户端;邮件服务器;SMTP协议

邮件服务器:邮箱(存储发给该用户的Email);消息队列(存储等待发送的Email)

SMTP协议:邮件服务器之间传递消息所使用的协议;客户端(发送消息的服务器);服务器(接受消息的服务器)

Email消息格式与POP协议

DNS应用

DNS概述

域名解析系统DNS:多层命令服务器构成的分布式数据库;应用层协议(完成名字的解析)

TLD(top-level domain):顶级域名服务器:负责com,org,net,edu等

DNS查询方式:迭代查询,递归查询

迭代查询图:
迭代查询递归查询图:
递归查询图

DNS记录和消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值