计算机网络(二)网络层

网络层

建议阅读时长:7min

目录

  • 概念
  • 网络应用体系结构
  • 网络应用进程通信
    • 同一主机运行进程之间的通信
    • 不同主机运行进程之间的通信
  • 网络应用的服务需求
  • Internet 传输层服务模型
  • 特定网络应用及协议
    • HTTP网络协议
    • SMTP、POP、IMAP
    • DNS
    • P2P应用
  • web缓存/代理服务器技术
    • 功能
    • 缓存既充当客户端,也充当服务端
  • socket 编程
    • TCP客户端软件流程
    • UDP客户端软件流程

概念

  • 进程 主机上运行的程序
  • 进程的标识符 IP地址 + 端口号
  • RRT 从客户端发送一个很小的数据包到服务器并返回所经历的时间
  • cookie 某些网站为了辨别用户身份, 进行session跟踪而储存在用户本地终端的数据
  • TLD 顶级域名服务器

网络应用体系结构

客户机/服务器、P2P、混合结构

网络应用进程通信

同一主机运行进程之间的通信
  • 进程间通信机制 利用socket发送/接收消息实现
  • 操作系统提供
不同主机运行进程之间的通信
  • 消息交换

网络应用的服务需求

可靠性、带宽、时延

Internet 传输层服务模型

  • TCP 面向连接、可靠传输、流量控制、拥塞控制、字节流传输
  • UDP 无连接、不可靠的数据传输、无流量控制、无拥塞控制、数据报传输

特定网络应用及协议

HTTP网络协议
  • 两类消息 请求消息、响应消息
  • C/S结构 客户:请求、接受、展示web对象 服务器:响应客户的请求,发送对象
  • 使用TCP传输服务
    • 服务器在80端口等待客户的请求
    • 浏览器发起到服务器的TCP连接
    • 服务器接受来自浏览器的TCP连接
    • 浏览器与web服务器交换HTTP消息
    • 关闭TCP连接
  • 上传输入的两种方式 POST方法:在请求消息的消息体中上传客户端的输入,适用于填写表格 GET方法:输入信息通过URL字段上传
  • 两种类型 非持久性连接,适用于HTTP1.0,每个TCP连接最多允许传输一个对象 持久性连接,适用于HTTP1.1,每个TCP连接允许传输多个对象
  • 无状态 服务器不维护任何有关客户端过去所发送消息的信息 需要cookie储存在本地方便快捷使用
SMTP、POP、IMAP

用于邮件发送的协议

DNS

域名解析系统

  • DNS服务 域名向IP地址的翻译、主机别名、负载均衡
  • 层级访问 本地域名解析服务器无法解析域名时,访问根域名服务器
P2P应用

web缓存/代理服务器技术

功能

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

缓存既充当客户端,也充当服务端

如果所请求对象在缓存中,缓存返回对象 如果不在缓存中,缓存服务器向原始服务器发送HTTP请求,获取对象,然后返回给客户端并保存

socket 编程

TCP客户端软件流程
  • 确定服务器IP地址与端口号
  • 创建套接字
  • 分配本地端点地址
  • 连接服务器
  • 遵循应用层协议进行通信
  • 关闭/释放连接
UDP客户端软件流程
  • 确定服务器IP地址与端口号
  • 创建套接字
  • 分配本地端点地址
  • 指定服务器端点地址,构造UDP数据报
  • 遵循应用层协议进行通信
  • 关闭/释放套接字