怎樣算得上熟悉TCP IP程式設計(協議)

2021-06-19 11:39:02 字數 1411 閱讀 9536

抓包

先從熟悉的下手,http,ftp。

封裝包自己封裝包,和現有協議通訊。tcp/ip協議作為乙個底層協議,不僅可以編寫聊天程式,很多高層協議都是基於tcp/ip編寫的。

自己造輪子,這樣也有助於理解其它協議,比如連線、查詢mysql(用socekt函式而不是庫函式),自己封裝乙個memched函式庫…

以前我大學時用perl傳送「飛鴿傳書」包,經常上課的時候同學們集體收到彈出資訊,卻不知道傳送者是誰,很有成就感。

如果你做已經事沒有成就感,就很快會失去動力。

他山之石

經常去github。

原始碼讀讀tcp/ip協議的實現**,去翻翻 linux 1.0 原始碼。

能進行網路程式設計

1.如果你說你會select,epoll,iocp模型,那會讓對方覺得更靠譜

3.如果你說設計了通訊協議,會讓對方覺得更貼切

4.如果你說做過,熟悉, ftp http snmp smtp 這些簡單的老古董協議,會加分,但不大.

5.如果你說熟悉bt,emule,udt等協議,那會對你很有好感.

6.如果你說你破解過某大牌 qq,360內某通訊協議,那會對你加分很大.

目測樓主在0.5的位置,嘿嘿

我對熟悉的定義是:閉著眼能想起原理和實現,能和其他人侃侃而談,能在搜尋的幫助下,不慢的整出來.

精通的定義是:觀點一針見血,實現一揮而就.

1)熟悉tcp/ip協議族的基本原理

ip位址的分類,定義,獲得,大概的管理方法

tcp、udp等主要協議的特點,主要格式,以及重要欄位在協議互動中起到的作用。

2)對於簡單的tcp/ip協議導致的問題,有基本的判斷

熟悉網路問題的解決方法,乙個問題,應該是由上而下(top-button),還是由下而上(button-top)來分析?

3)基本的程式設計知識。

在系統內,構建簡單通訊。

在系統間,構建簡單的通訊。

熟悉系統內的api,知道在什麼時候,改使用哪些api協調工作。

能夠熟練使用這些api,在系統間傳遞資訊,檔案。

能夠熟練使用這些api,實現自己的簡單的私有協議。

4)高階程式設計知識

知道一兩個已經封裝好的框架(framwork),它們之間的差別。

使用乙個框架,寫過能正常工作的程式。

知道網路協議處理也是要講究效能的,知道效能的瓶頸會在什麼地方產生。

能有較好的設計技巧,將私有協議設計得更加具有彈性,優雅。

熟悉系統間協議處理的細微的差異,以及將會對業務造成的影響,時延、狀態不一致、自定義字段、、、、、

5)熟練階段的知識

針對業務的需求,快速選型,定框架。

不再認為多執行緒是萬能的。

知道穩定性比效能更加重要。

資料報去了哪兒,不用看**,也能預估出來。

6)源**是最好的老師,永遠都是。

CRM怎樣才算得上智慧型化

with artificial intelligence,turn data into information.ai將資料轉換成有用的資訊。智慧型化和人工智慧現在變得炙手可熱,大家都宣傳 標榜自己的產品是ai賦能的 智慧型化的,那麼,什麼是ai,ai在crm中如何應用,基於ai的智慧型化如何實現?人...

怎樣才能算是熟悉python

怎樣才能算是熟悉python?會什麼?具體。招聘網頁上寫著熟悉python.高手,指導,謝謝。瀏覽 1179 次 舉報 描述不清 違規檢舉 侵權投訴 我有更好的答案 發布於2015 06 15 18 39 最佳答案 熟知主流硬體體系 x86,x64 熟知 cpython 的具體實現,如若可能至少通讀...

SaaSERP怎樣快速熟悉業務

對於saas管理系統來說,客戶操作方便,這個saas系統就成功。首先saas系統作為管理系統,要知道每個模組都是幹什麼的,你的客戶需要什麼功能,所有想要快速了解這個系統就需要有個先後順序。按本人操作的erp來說。這是乙個 管理系統,分前台pos機和後台erp,前台每天銷售的商品明細都會存入erp中,...