插座(socket)例子:日期伺服器&客戶端。 名詞定義: 插座 (socket):通信的終端。一組行程使用一對插座,雙方各一個,在網路上通信。一個插座是由一...
本文目標: 認識(或複習)socket programming 了解 Linux 如何接收/發送封包 Recap: socket programming...
Socket 是甚麼? 遠在兩邊(在同一台機器也是可以)的兩個程序(process)互相傳遞訊息就是inter-process communication (簡...
思考重點 如何將應用程序消息委託給協議棧發送? socket是調用那些函式進行收發操作? 核心知識 協議棧如何進行收發操作 現在將擁有的數據整理一下,首...
簡介:網絡分爲5層,軟體開發需要用到的主要是上面兩層:網絡層,和應用層;路由器系統開發的估計需要用到傳輸層;所以如果研究網絡的話,我們需要深入瞭解的是網絡層和應...
client的實現: public class socket_management : MonoBehaviour { private TcpClien...
最近都在全台跑面試 都沒時間繼續寫.. 剛好面試某金控 面試官出了個回家作業給我 就花了一個下午把它完成 順便做為這次的主題 需求如下 寫個Winform(Cl...
團隊擴大戰線,需求資訊工程/電子工程人員, 協助整合檢測設備(具RS232接口或internet socket)。1.定時從RS232取得數據(字串)回傳2.傳...
不知不覺就這樣寫了30天,第一天很痛苦,第二天更痛苦,第三天之後就寫上癮了,沒有這個鐵人賽我都不知道原來寫作挺有趣的,而且寫的過程可以讓自己的知識體系更加鞏固。...
接下來是實驗的環節了,在server端先啟動ping server #> python ping.py 在client端發送ping ># pin...
很快就來到最後一個實作了,自幹一個ping Server,分散式的應用越來越流行,同一個應用不再是靠共享記憶體,而是靠網路線串接各台機器,那分散式的基礎設施靠什...
接下來我們利用_buildEthHeader、_buildIPHeader和_buildUDPHeader來建構一個完整的DNS server首先,在監聽到pa...
走過最難的TCP,接下來是比較簡單的環節了,這兩天,我們來實作一個基於UDP的DNS server 還是一樣,我們要從第二層構建header,但是和前幾天的TC...
前面聊到四向揮手的過程,接下來是demo的部分,和三向交握一樣,需要nc指令在HostA啟動TCP的servernc -l 172.17.0.5 80 在Hos...
四向揮手顧名思義,就是要和TCP連線說byebye了,為什麼要說byebye呢?client需求結束直接斷開不就好了嗎?如果client直接斷開,不和serve...
Wifi的協議裡的常見加密方式有WEP和WPA/WPA2,WEP在2003年發現安全性不夠,所以逐漸被淘汰,現在看到的router AP幾乎都是使用WPA/WP...
上一回說了這三個函數_buildEthHeader()、 _buildIPHeader()、 _buildTCPHeader(tcp_len, seq, ack...
在Day13和Day14介紹了TCP的封包結構,TCP是連接導向的協議,所以在建立連線前需要和對方確認和對方的通信收發是正常的,在斷開連接也需要和對方確認沒有額...
checksum是為了保證 header 或 data 不被破壞而發展出來的機制,IP層有IP層的checksum,TCP有TCP的checksum,計算方式都...
Python socket發送封包有很多種方式和API,例如send、sendto、sendall等等,如果你的socket是TCP的socket,那麼在接收到...
在Day11中我們介紹完ARP有說如何發起中間人攻擊,DNS spoofing就是成為中間人後的一種網路攻擊方法,DNS並沒有想ARP有個table會在本地電腦...
DNS是基於UDP的一項網路應用服务。它由一個将domain name和ip address相互映射的一個分散式資料庫,能够使人更方便地访问網際網路和http一...
前一天我們聊了HTTP並解析他,網頁的資料都是藉由http傳輸的,但是網頁的傳遞過程中有許多隱私訊息,例如帳號密碼、信用卡帳號等等的,如果像昨天那樣,寫一個網路...
HTTP是一个Client和Server之间request和response的标准,通常使用TCP协议,預設的port是80,常見於網頁、Restful API...
上一節講了TCP的原理,這裡就是實驗證明的環節了!第一步,還是要寫程式去解析TCP的header同UDP,我們的packet前面已經解析了長度為14的第二層鏈接...
TCP header的封包較為複雜,且TCP有保證可靠傳輸的機制,所以花兩小節來講,第一小節先講理論,TCP是怎麼保證可靠傳輸、壅塞控制等等。 TCP是基於by...
第四層的目的是為數據傳輸提供可靠性、流量控制、壅塞控制、多路複用等服務,這一層之上的應用也有了port的概念,除了要指定ip address之外,還需要指定po...
讓socket可以用async的方式接收資料 本篇所參考的相關文件: asyncio利用 coroutine 機制完成的非同步 I/O 函式庫,它讓以前常常...
講了太多硬知識,來講個有趣的,也就是中間人攻擊(Man-in-the-Middle)的原理,中間人攻擊能讓同個局域網下的電腦在發送封包時經過你的電腦,再轉給路由...
今天摸struct資料封裝的部份,感覺還需要弄一陣子,蠻多要思考的東西 覺得可能不用定義封包長度,只要根據[指令類型]就可以查表得知[封包長度] 更新資料的...