|
Hi all,
7 q( h; L3 H. Y' r" F; v I$ I 我目前在系統板上放了一個ethernet的MAC和10/100的PHY,並寫了一個簡單的程式來測試是否功能正確,但因對
. V% R, t" L) i$ l. L; z) t1 _ethernet協定不等,所以有一些問題想請教前輩:
! _0 S3 T& B; A4 V目前區域�有一台PC,稱為PC_A,他的MAC address為00:15:F2:94:53:A6, IP為192.168.1.11
- z1 }& s( E; I; z, Q- X1 e系統板暫稱為system_A,他的MAC address為00:10:5A:81:CA:FD, IP為192.168.1.155
2 ?4 u2 \' E) a" C2 k* \! b我用PC_A 來 ping system_A,並利用system_A的開發環境來看PC_A所傳來的資料,如附件
8 s* }$ p& a, i" q/ F# R- z8 X& p" `' }$ m
從附件看來前6個位元組為FFFFFFFFFFFF,好像是廣播位址,再來6個位元組為0015f29453a6,跟PC_A的MAC address相同,
w% E) B: T' } q# `, r U! Q再來2個位元組為0806,因該是說此封包為ARP,其他位元組先不管,) P/ i0 @) ~6 v3 ^+ X8 b. b
1.從以上的資料來看請問system_A接收PC_A傳來的資料是用network order(Big-endian)順序存到記憶體還是用
9 W# ~5 S' S. @( e" a3 `# ~ Little-endian順序存到記憶體?6 w- m+ w5 g) z
2.ARP封包識別碼是0x0806,如果system_A是用network order將收到的資料存到記憶體,是否表示system_A的MAC有問題?. U- i/ N) x! G* `$ |1 k4 H% J4 Y
因為我認為如果是用network order將收到的資料存到記憶體應該是0608。
: D; T' c# P; x L Y
% G6 \1 N! B; Q0 s9 E. M其他問題
# a' x. D, [; \1 C$ ^, _5 y8 D1.在linux下是否有工具可以看網路卡傳輸的資料,這裡指的資料是指raw data,也就是我想知道網路卡送出得第一個位元組是??
5 n4 x6 Q; e" Z( X; M1 x8 j 第二個位元組是??......
% u. Z$ }3 b) M# V+ V2.相同問題在windows下是否有類似的工具。
! ?$ u) c. |% Y3 {2 D7 T1 T3.哪裡有基本的網路測試程式可以參考
! n1 C! p2 i, S, y+ }謝謝 |
本帖子中包含更多資源
您需要 登錄 才可以下載或查看,沒有帳號?申請會員
x
|