LCT(Local Connection Translation)是在網路層(Network
Layer)和傳輸層(Transport
Layer)中加入一個抽象(Abstraction),如圖可知,在Network
Layer到LCT中使用目前(current)IP位址,LCT到Transport
Layer中使用原始(previous)IP位址。LCT技術是將previous封包IP位址轉換成current
IP位址傳送資料給伺服器(Server),達到連線切換與管理。
作者透過LCT將連線進行切換,當客戶端(Client)previous的封包目的(Destination)IP位址轉換成current的Destination
IP位址傳送給準確Server,Server接收到封包的來源(Source)IP位址轉換成previous的IP位址。
preious_src_addr、port:
負責記錄連線建立者所使用IP位址、port,當欄位被建立後不會再更變,因此在上層應用始終只認得這個IP位址、port。所有接收到封包IP和TCP/UDP
表頭中的Source IP、port會被修改成這個欄位正確值,才往上送,所以才能被上層應用接收到。
preious_det_addr、port:
負責記錄對方所使用IP位址、port,當欄位被建立後不會再更變,因此在上層應用始終只認得這個IP位址、port。所有接收到封包IP和TCP/UDP
表頭中的Destination
IP、port會被修改成這個欄位正確值。
current_src_addr、port:
負責記錄current使用自己IP位址、port,也會因為切換到新的網路而改變,當發送出去的封包Source
IP、port會被修改這個欄位記錄值,才能正確傳送到目的地。
current_dst_addr、port:
負責記錄current使用對方IP位址、port,也會因為切換到新的網路而改變,當發送出去的封包Source
IP、port會被修改這個欄位記錄值,才能正確傳送到目的地。