日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

应用层协议与网络应用

發布時間:2024/7/19 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 应用层协议与网络应用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

網絡應用的體系結構

1、客戶機/服務器(Client-Server, C/S)

服務器:

  • 7*24小時提供服務
  • 永久訪問地址/域名
  • 利用大量服務器實現可拓展性

客戶機:

  • 與服務器通信,使用服務器提供的服務
  • 間歇性接入網絡
  • 可能使用動態IP地址
  • 不會與其他客戶機直接通信
    例如:Web服務

2、點對點結構(Peer-to-peer,P2P)

  • 沒有永遠在線的服務器
  • 任意端系統/節點之間可以直接通信
  • 節點間歇性接入網絡
  • 節點可能改變IP地址
  • 缺點:難于管理
  • 優點:高度可伸縮

3、混合結構(Hybrid)

Napster

  • 文件傳輸使用P2P結構
  • 文件的搜索采用C/S結構——集中式
    每個節點向中央服務器登記自己的內容
    每個節點向中央服務器提交查詢請求,查找感興趣的內容

網絡應用的進程間通信
進程:
主機上運行的程序
客戶機進程:發起通信的進程
服務器進程:等待通信請求的進程
注意:采用P2P架構的應用同樣存在客戶機進程/服務器進程之分

同一主機上運行的進程:

  • 進程間通信機制
  • 操作系統提供

不同主機上運行的進程:

  • 消息交換

套接字:Socket

  • 進程間通信利用scoket發送/接收消息實現
  • 類似于寄信
  • 發送方將消息送到門外郵箱
  • 發送方依賴(門外的)傳輸基礎設施將消息傳到接收方所在主機,并送到接收方的門外
  • 接收方從門外獲取消息

傳輸基礎設施向進程提供API

  • 傳輸協議的選擇
  • 參數的設置

如何尋址進程?

  • 不同主機上的進程間通信,那么每個進程必須擁有標識符
  • 如何尋址主機?——IP地址
  • 主機有了IP地址之后,并不足以定位進程,因為同一主機上可能同時有多個進程需要通信

端口號

  • 為主機上每個需要通信的進程分配一個端口號
  • HTTP Server:80
  • Mail Server:25

進程的標識符
IP地址+端口號

應用層協議

  • 網絡應用需遵循應用層協議
  • 公開協議
    由RFC(Request For Comments)定義
    允許互操作
    HTTP,SMTP,……
  • 私有協議
    多數P2P文件共享應用

應用層協議的內容

  • 消息的類型(type)
    請求消息
    響應消息
  • 消息的語法(syntax)格式
    消息中有哪些字段?
    每個字段如何描述
  • 字段的語義(semantics)
    字段中信息的含義
  • 規則(rules)
    進程何時發送/響應消息

網絡應用對傳輸服務的需求

  • 數據丟失/可靠性
    某些網絡應用能容忍一定的數據丟失:網絡電話
    某些網絡應用要求100%可靠的數據傳輸:文件傳輸,telnet
  • 時間延遲
    有些應用在延遲足夠低時才“有效”
    網絡電話/網絡游戲
  • 帶寬(bandwidth)
    某些應用只有在帶寬達到最低要求時才“有效”:網絡視頻
    某些應用能夠適應任何帶寬——彈性應用:email

Internet提供的傳輸服務

總結

以上是生活随笔為你收集整理的应用层协议与网络应用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。