TCP/IP協(xié)議的工作流程如下:
●在源主機上,應用層將一串應用數(shù)據(jù)流傳送給傳輸層。
●傳輸層將應用層的數(shù)據(jù)流截成分組,并加上TCP報頭形成TCP段,送交網(wǎng)絡層。
●在網(wǎng)絡層給TCP段加上包括源、目的主機IP地址的IP報頭,生成一個IP數(shù)據(jù)包,并將IP數(shù)據(jù)包送交鏈路層。
●鏈路層在其MAC幀的數(shù)據(jù)部分裝上IP數(shù)據(jù)包,再加上源、目的主機的MAC地址和幀頭,并根據(jù)其目的MAC地址,將MAC幀發(fā)往目的主機或IP路由器。
●在目的主機,鏈路層將MAC幀的幀頭去掉,并將IP數(shù)據(jù)包送交網(wǎng)絡層。
●網(wǎng)絡層檢查IP報頭,如果報頭中校驗和與計算結果不一致,則丟棄該IP數(shù)據(jù)包;若校驗和與計算結果一致,則去掉IP報頭,將TCP段送交傳輸層。
●傳輸層檢查順序號,判斷是否是正確的TCP分組,然后檢查TCP報頭數(shù)據(jù)。若正確,則向源主機發(fā)確認信息;若不正確或丟包,則向源主機要求重發(fā)信息。
●在目的主機,傳輸層去掉TCP報頭,將排好順序的分組組成應用數(shù)據(jù)流送給應用程序。這樣目的主機接收到的來自源主機的字節(jié)流,就像是直接接收來自源主機的字節(jié)流一樣。