Linux Kernel Architecture
Chapter 12: Networks ❑ ack_seqholds a sequence number used when acknowledging receipt of TCP packets. ❑ doffstands fordata offse ...
Chapter 12: Networks ReceivingTCP Data All TCP actions (connection setup and shutdown, data transmission) are performed by sendi ...
Chapter 12: Networks Figure 12-25.tcp_v4_do_rcvis a multiplexer that splits the code flow into different branches on the basis o ...
Chapter 12: Networks Together with the set ACK flag of the packet, this indicates to the client that the first packet has been r ...
Chapter 12: Networks tcp_v4_conn_requestis invoked if the socket state isTCP_LISTEN.^29 The function concerns itself with many d ...
Chapter 12: Networks Now the client must wait for server acknowledgment of the SYN packet and for a SYN packet acknowl- edging t ...
Chapter 12: Networks ReceivingPackets The code flow diagram in Figure 12-30 shows the path taken — starting from the familiartcp ...
Chapter 12: Networks The fast path code doesn’t bother with processing ACK segments but delegates this task totcp_ack. Here, obs ...
Chapter 12: Networks been established. The data are then copied to the address space of the userspace process in the kernel and ...
Chapter 12: Networks ConnectionTermination Like connection setup, shutdown of TCP connections is also brought about by a multist ...
Chapter 12: Networks The transition from FIN_WAIT_1 to FIN_WAIT_2 is performed by the central dispatcher function tcp_rcv_state_ ...
Chapter 12: Networks ❑ typespecifies the numeric identifier of the protocol type. ❑ stateindicates the connection state of the s ...
Chapter 12: Networks int optname, char user *optval, int user optlen); int (compat_setsockopt)(struct socket sock, int level, in ...
Chapter 12: Networks Data are sent and received by placing them on wait queues (sk_receive_queueandsk_write_queue) that contain ...
Chapter 12: Networks structure are designed to communicate with system calls. In other words, they form the link between user-si ...
Chapter 12: Networks Inode and socket are linked by allocating one directly after the other in memory by means of the follow- in ...
Chapter 12: Networks switch(call) { case SYS_SOCKET: err = sys_socket(a0,a1,a[2]); break; case SYS_BIND: err = sys_bind(a0,(stru ...
Chapter 12: Networks All transport protocols of the kernel are grouped into the arraystatic struct net_proto_family *net_familie ...
Chapter 12: Networks It is exactly this function (create) that is invoked after memory has been reserved for the socket.inet_cre ...
Chapter 12: Networks The implementation for TCP follows a similar pattern but is made a little more complicated by the many deta ...
«
37
38
39
40
41
42
43
44
45
46
»
Free download pdf