久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: UDP數據報與TCP傳輸應用系統的層間接口設計 [打印本頁]

作者: 51黑tt    時間: 2016-3-5 17:47
標題: UDP數據報與TCP傳輸應用系統的層間接口設計
  TCP/IP協議大致可以分為以下的層次:應用層、TCP/IP協議層、網卡驅動。這些協議層之間的接口如圖 1所示,其中輸出是數據流向對方,輸入是數據流向本地應用層。
  (1)應用層和rap層的接口
  如果是作為客戶端,則包含:
  ·bind:使用bind綁定本地端口;
  ·cONnect:需要使用connect進行連接,當應用層調用connect函數時,TCP層負責建立連接,返回值指 示是否連接成功;
  ·send:使用send發送一個應用層的數據;
  ·recelve:當rap層有數據到達時,rap層將觸發OnReceive函數,用戶可以在OnReceive函數中做接收 處理;
  ·close:需要使用close函數主動和對方斷開連接,連接斷開以后返回真,如果斷開操作超時,則返回假。

 圖1 TCP/IP層間接口
  如果是作為服務器,則包含:
  ·bind綁定;
  ·listen:在綁定的本地端口監聽;
  ·對方發來連接;
  ·send發送;
  ·recelve接收;
  ·close斷開連接。
  總的來說,rap層要提供給應用層以上的一些函數。
  (2)協議和網卡驅動的接口
  發送時,網卡提供send函數,當協議調用send函數時,網卡驅動負責發送這個包。
  接收時,當網卡接收到一個數據包以后,產生一個中斷,系統提供一個中斷處理函數,在這個中斷函 數中將這個包提交給TCP/IP層。
  (3)TCP/IP內部的層間接口
  發送流程如下:應用層調用send,要求rap層發送,TOP層填寫好TCP頭部信息以后,要求IP層發送,IP 層檢查是否能在ARP緩存中找到IP對應的物理地址,如果沒有則要ARP協議發送一個ARP請求,如果有則填 寫IP頭。再設置一個網絡接口層,這一層負責填寫MAC層頭部,這一層的另外一個功能是將接收網絡數據 流分流(也就是對IP包和ARP交給不同的函數處理)。
  對網卡的接收和TCP/IP協議的接口來說,直接在驅動程序的接收中斷處理函數中處理P頭、TCP頭,然 后把數據送給應用層。
  (4)實現隊列層間接口
  ·中斷處理函數過大,可能會帶來問題;
  ·各個層的界面不清晰;
  ·越向底層所要發送的包數目越多。如果發送時也是從應用層一直運行到網卡驅動,
  那么就比較難解決底層的多佘數據包發送的問題。
  所以將在層次之間設一個隊列,程序循環檢測各個層間隊列中是否有元素,如果有元素則提取后處理 。構建的一個隊列結構體如下。
     
  這個隊列提供隊列的初始化、隊列的寫入、隊列的讀出等函數,以及完成隊列的操作。但是隊列多也 會占用資源和查詢時間,所以在沒有必要設置隊列的地方將苴接采用函數調用的方法。
  (5)模塊和模塊之間的接口
  各個模塊之中有三種類型的子模塊:一般函數、中斷函數和進程。
  ·一般函數只有在被進程調用時才運行。
  ·中斷函數一般由中斷觸發而運行,這里主要有網卡驅動的接收處理函數和定時器模
  塊中的定時器。
  由于這里采用隊列的方式作為模塊或層間的接口,所以必須反復查詢各個模塊的輸入隊列,所有含有 輸入隊列的模塊都必須有一個反復被調用的函數,稱之為進程。在主進程maln函數中反復地調用這些進程。






歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产精品久久久久久婷婷天堂 | 欧洲毛片 | 超碰在线免费 | 激情久久久久 | 欧美黑人巨大videos精品 | 91原创视频在线观看 | 操操操日日日 | 国产精品久久久久久久久久久久午夜片 | 亚洲国产福利视频 | 午夜看片网站 | 玖玖免费 | 天天干视频网 | 一级一级一级毛片 | 国产男人的天堂 | 久久久久久久久淑女av国产精品 | 欧美一二三区 | 中文字幕乱码一区二区三区 | 爱爱综合网 | 中文字幕 欧美 日韩 | 成人在线免费观看 | 日本电影一区二区 | 伊人色综合久久天天五月婷 | 国产高清视频 | 亚洲1区| 在线看免费的a | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 国产激情视频在线 | 国产高清一区二区 | a级片在线观看 | 91麻豆精品一区二区三区 | 日韩三级在线 | 精品久久久久久久久久 | 欧美精品在欧美一区二区少妇 | 一级少妇女片 | 久久69精品久久久久久久电影好 | 久久综合99| 午夜a v电影 | 国产91一区 | 久久精品国产久精国产 | 国产成人jvid在线播放 | 91精品国产92 |