• 应用层


    网络应用的体系结构

    • 客户机/服务器结构(Client-Server, C/S)
    • 点对点结构(Peer-to-peer, P2P)
    • 混合结构(Hybrid)

    客户机/服务器结构

    • 服务器
      • 永久提供服务
      • 永久性访问地址/域名
      • 大量的服务器实现了可拓展性
    • 客户机
      • 与服务器通信,使用服务器提供的服务
      • 间歇性接入网络
      • 可能使用动态的ip地址
      • 不会与其它客户机通信

    P2P结构

    • 没有永远在线的服务器
    • 任意端系统/节点之间可以直接通讯
    • 节点间歇性接入网络
    • 节点可能改变IP地址
    • 优点:高度可伸缩
    • 缺点:难于管理

    混合结构

    Napster

    • 文件传输使用P2P结构
    • 文件的搜索采用C/S结构——集中式

    网络应用进程通信

    在计算机网络中, 进程指的就是程序。

    同一主机上的进程之间的通信

    • 进程间通信机制
    • 操作系统提供

    不同主机上的进程之间的通信

    • 消息交换

    套接字(Socket)

    进程间通信利用socket发送/接收消息实现,这个过程类似于寄信

    寻址进程

    • 不同主机上的进程间通信,那么每个进程必须拥有标识符
    • 寻址主机——ip地址
    • 端口号(Port number):为主机上每个需要通信的进程分配一个端口号( HTTP Server: 80;Mail Server:25)
    • 进程的标志符(ip地址+端口号)

    应用层协议

    • 网络应用需遵循应用层协议
    • 公开协议
      • 由RFC(Request For Comments)定义
      • 允许互操作
      • HTTP, SMTP, ……
    • 私有协议
      • 多数P2P文件共享应用

    应用层协议的内容

    • 消息的类型(type)
      • 请求消息
      • 响应消息
    • 消息的语法(syntax)/格式
      • 消息中有哪些字段(field)?
      • 每个字段如何描述
    • 字段的语义(semantics)
      • 字段中信息的含义
    • 规则(rules)
      • 进程何时发送/响应消息
      • 进程如何发送/响应消息

    网络应用的需求与传输层服务

    网络应用对传输服务的需求

    • 数据丢失(data loss)/可靠性(reliability)
    • 时间(timing)/延迟(delay)
    • 带宽(bandwidth)

    Internet提供的传输服务

    • TCP
    • UDP

    (...未完待续...)

  • 相关阅读:
    WingIIDE的licese破解方法
    HttpCookie
    Jquery中html()方法 and "click"绑定后代元素
    jquery 选择器多个
    input标签的type为select、radio、checkbox的使用
    c#中?和??使用
    VS中使用附加进程来调试项目
    刷新局部页面
    ant design vue 文件上传的集中页面
    vue 上传超大文件出现Uncaught (in promise) Error: Network Error at createError
  • 原文地址:https://www.cnblogs.com/hichens/p/12544376.html
Copyright © 2020-2023  润新知