Implement client server chat program 100 with process communication

Updated on technology 2024-04-27
3 answers
  1. Anonymous users2024-02-08

    To put it simply, this process is called a three-way handshake agreement.

    First handshake: When the connection is established, the client sends a SYN packet (syn=j) to the server and enters the SYN send state, waiting for the server to acknowledge.

    Second handshake: When the server receives the SYN packet, it must confirm the customer's SYN(ACK=J+1) and send a SYN packet (syn=k), that is, SYN+ACK packet, and the server enters the SYN recv state.

    Third handshake: The client receives the SYN ACK packet from the server and sends an acknowledgement packet ACK (ACK=K+1) to the server.

    After the three-way handshake, the client and server begin to transfer data, and in the process described above, there are some important concepts:

    Unconnected Queue: In the three-way handshake protocol, the server maintains an unconnected queue that opens an entry for each client's SYN packet (syn=j) that indicates that the server has received the SYN packet and issues an acknowledgment to the customer, waiting for the customer's acknowledgment packet. The connection identified by these entries is in the SYN recv state on the server, and when the server receives an acknowledgment packet from the customer, the entry is deleted and the server enters the established state.

    backlog parameter: indicates the maximum number of unconnected queues.

    Number of SYN-ACK Retransmissions After the server sends the SYN ACK packet, if the customer acknowledgement packet is not received, the server performs the first retransmission, waits for a period of time and does not receive the customer acknowledgement packet, performs the second retransmission, and if the number of retransmissions exceeds the maximum number of retransmissions specified by the system, the system deletes the connection information from the semi-connection queue. Note that the wait time for each retransmission is not necessarily the same.

    Semi-connected time-to-live: refers to the maximum time that entries in a semi-connected queue can live, that is, the maximum time from the time the service receives the SYN packet to the time when the packet is invalid, and the time is the sum of the maximum waiting time for all retransmission request packets. Sometimes we also refer to the half-connection live time as the time out time and the syn recv time alive.

  2. Anonymous users2024-02-07

    If the chat tool of P2P communication technology does not need to go through the server, it only needs to communicate directly between two computers, and if it is not based on P2P, it must communicate through the server.

  3. Anonymous users2024-02-06

    If it is a company computer, of course, it has to go through the server, unless it is your company's computer, which is directly connected! However, even if it is a machine that is directly connected to the wire, the use of the chat tool also needs to go through the bus of telecommunication network. If the Work Safety Supervision Bureau wants to investigate, it will also be found!

Related questions
3 answers2024-04-27

First: Pipeline communication.

When two processes communicate through a pipeline, the process that sends the information is called the write process; The process that receives the information is called the read process. The intermediate medium of the pipeline communication mode is the file, which is usually called the pipe file, which connects a write process and a read process together like a pipe to achieve communication between the two processes. The write process writes information to the pipeline file through the write end; The read process reads information from the pipeline file through the readout. >>>More

8 answers2024-04-27

There are basically two reasons: 1. If you use a ground antenna, it will be blocked by tall buildings, mountains, etc., resulting in limited antenna coverage; 2. Since the earth's surface is curved, the ground antenna can only cover a certain radius. >>>More

3 answers2024-04-27

A harmful process is a process that causes harm to the system.

26 answers2024-04-27

By the way, because there is a lot of software, it is impossible to use them all, so in addition to the system process, everyone is the same, and the software processes on each computer are all kind >>>More

16 answers2024-04-27

1. Click Start

2. Click "Run" and type"regedit"(excluding double quotation marks) after 3, in the "Registry" in turn. >>>More