STUDY OF SOCKET PROGRAMMING WITH CLIENT-SERVER MODEL
To write a python program to perform stop and wait protocol
2. Get the frame size from the user
3. To create the frame based on the user request.
4. To send frames to server from the client side.
5. If your frames reach the server it will send ACK signal to client otherwise it will sendNACK signal to client.
import socket
s=socket.socket()
s.bind(('localhost',8080))
s.listen(5)
c,addr=s.accept()
while True:
i=input("ENter a data:")
c.send(i.encode())
ack=c.recv(1024).decode()
if ack:
print(ack)
continue
else:
c.close()
break
import socket
s=socket.socket()
s.connect(('localhost',8080))
while True:
print(s.recv(1024).decode())
s.send("Recieved".encode())
![WhatsApp Image 2023-05-27 at 14 04 57](https://private-user-images.githubusercontent.com/121215938/241376518-dbf92aab-1c95-42af-ae4f-ed42a30e0fb4.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxNjI3MTgsIm5iZiI6MTcyMjE2MjQxOCwicGF0aCI6Ii8xMjEyMTU5MzgvMjQxMzc2NTE4LWRiZjkyYWFiLTFjOTUtNDJhZi1hZTRmLWVkNDJhMzBlMGZiNC5qcGc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzI4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcyOFQxMDI2NThaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT02M2Y3MjFhMjI1MTc1MjU0ZDM3OTFjZDJiMmVmNjZmZjA1MmM3YmFjOTkyNTIzMjEwNGY5M2QzOWRhYmI1MzBiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.mtb1nPW_rDW48Fuc9HjX0eyD_KELCSzHYsTRiG-ighw)
![WhatsApp Image 2023-05-27 at 14 05 09](https://private-user-images.githubusercontent.com/121215938/241376524-b6f256a1-2eee-4c14-a90a-a77ca8a93830.jpg?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjIxNjI3MTgsIm5iZiI6MTcyMjE2MjQxOCwicGF0aCI6Ii8xMjEyMTU5MzgvMjQxMzc2NTI0LWI2ZjI1NmExLTJlZWUtNGMxNC1hOTBhLWE3N2NhOGE5MzgzMC5qcGc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjQwNzI4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI0MDcyOFQxMDI2NThaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0wOTU3NzJmYmNhZmZlMTU2ZGViNzQ1N2UwN2QwNjI4ODhkZDZkYmE5ODIwNzNhZWU5MmE4NGEzN2MyNzJlMjMxJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZhY3Rvcl9pZD0wJmtleV9pZD0wJnJlcG9faWQ9MCJ9.UVhJek5XypYgnXCExlaUOzTekHE2yZrB6CiG8CCOp5s)
Thus, python program to perform stop and wait protocol was successfully executed.