【发布时间】:2019-03-23 11:40:55
【问题描述】:
我对文件linux/include/net/inet_sock.h 中的变量inet_num 和inet_sport 之间的区别感到困惑,文档只说一个是“本地端口”,另一个是“源端口”。
我将它们打印到终端,并且在每只袜子中,inet_num 和 inet_sport 都是不同的。而且我找不到更多关于此的文件。
/* linux/include/net/inet_sock.h */
/** struct inet_sock - representation of INET sockets
*
* @sk - ancestor class
* @pinet6 - pointer to IPv6 control block
* @inet_daddr - Foreign IPv4 addr
* @inet_rcv_saddr - Bound local IPv4 addr
* @inet_dport - Destination port
* @inet_num - Local port
* @inet_saddr - Sending source
* @uc_ttl - Unicast TTL
* @inet_sport - Source port
* @inet_id - ID counter for DF pkts
* @tos - TOS
* @mc_ttl - Multicasting TTL
* @is_icsk - is this an inet_connection_sock?
* @uc_index - Unicast outgoing device index
* @mc_index - Multicast device index
* @mc_list - Group array
* @cork - info to build ip hdr on each ip frag while socket is corked
*/
它们代表什么?它们之间有什么区别?它们有什么用?
【问题讨论】:
标签: linux-kernel network-programming