Question: Please help quick and correct from socket import * serverPort = 12000 serverSocket = socket(AF_INET, SOCK_STREAM) serverSocket.bind ((, serverPort)) serverSocket. Iisten(1) print(Ready to receive.') while
Please help quick and correct

from socket import * serverPort = 12000 serverSocket = socket(AF_INET, SOCK_STREAM) serverSocket.bind ((, serverPort)) serverSocket. Iisten(1) print("Ready to receive.') while True: connectionSocket, addr = serverSocket.accept() sentence = connectionSocket.recv(1024).decode () capitalizedSentence = sentence. upper() connectionSocket. send(capitalizedSentence.encode( ) ) connectionSocket. close() Client fron socket Import * serverName = "Localhost" serverPort =12006 clientSocket = socket(AF_INET, SOCK_STREAM) clientSocket. connect((serverName, serverPort)) sentence = input('Input lowercase sentence: ') clientSocket.send(sentence.encode()) modifiedSentence = clientSocket.recv(1024) print("From server: + modifiedSentence.decode()) clientSocket. close() What would happen if, while sending a UDP packet, an error in the network, caused that packet to be dropped? What if it was a TCP packet? Network errors aren't accounted for by UDP or TCP: so both packets would be dropped and are unrecoverable. Both UDP and TCP provide reliable sending just in different ways. Both packets would be resent without interference from the application layer. The app sending the UDP packet may choose to resend it, or it may not. The TCP packet would be sent again because TCP creates reliable connections. In the TCP client code, the socket is closed after the response from the server has been received. This was not done in the UDP client. Why does it have to be closed in the TCP client? Closing the socket does not matter either way, it's just a matter of style
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
