個人對協議的一些理解

2021-09-29 07:23:05 字數 622 閱讀 9794

所謂協議,是虛無縹緲的東西,它僅僅是一套規範。協議需要具體的事物實現才有價值,具體到網路世界中,http協議是需要客戶端程式(瀏覽器)和伺服器容器程式(tomcat)共同實現的。假設http協議在傳輸層的協議就是tcp協議,那麼可以把瀏覽器和tomcat簡單的抽象成為兩個socket。乙個客戶端socket,乙個serversocket。

使用者輸入**回車,瀏覽器收集**資訊和http協議中規定的其他資訊,按照協議順序把所有資訊整理成一大段字串,呼叫socket以流的方式發給tomcat。

tomcat收到流以後,按照http協議解析這些資訊,它明白每一行代表什麼東西,於是找到使用者需要的資源,加上一些http響應報文需要的其他資訊,利用accept到的socket以流的方式寫回給瀏覽器。

瀏覽器拿到這個流繼續解析,根據響應報文的格式,找到需要解析的資源和解析資源的姿勢。

在這個過程中,瀏覽器和tomcat都必須知道http請求報文的格式和響應報文的格式。對於瀏覽器來說,它必須知道請求報文的格式才能傳送正確的請求,也必須知道響應報文的格式才能正確解析tomcat回傳的東西。同理,tomcat必須知道請求報文的格式才能解析出瀏覽器要什麼,也必須知道響應報文的格式才能正確回傳資訊。

按照這個邏輯,寫出乙個簡易的瀏覽器和伺服器容器程式其實是不難的。

個人對氣泡排序的一些理解

氣泡排序 將乙個無序陣列進行排序 例 規則 從第乙個數開始,第乙個數和後面的數進行比較,小的放前面,大的放後面。直到最後兩個數進行比較後,算一輪排序。因為每一輪會確定乙個數的位置,因此總輪數正好是陣列長度 1。考慮使用內外層for迴圈,外層控制氣泡排序的輪數,內層迴圈對數進行兩兩比較。使用if條件語...

對hbase的一些名稱解釋和個人理解

hbase架構中的名稱解釋 client 訪問hbase資料庫的表的使用者 讀 寫 zookeeper 是client訪問hbase的入口 儲存元資料表meta的位置 hmaster 對region進行負載均衡 不參與hbase表資料的讀寫 hregionserver 管理當前伺服器上面的regio...

對TCP UDP協議的個人理解

先來談談osi和tcp ip模型吧 osi模型 osi模型是一種開放系統互連的參考模型,以標準化網路中裝置通訊的方式。osi模型將網路通訊分為7個不同的層,分別為應用層,資料鏈路層,網路層,傳輸層,會話層,表示層和物理層,該模型為確保在網路裝置之間實現互操作性做出巨大貢獻。tcp ip模型 tcp ...