Computer NetworksNETWORKS

Web Development Sockets 1. Send/Recv

Sockets(5강), Javascript(6강), Django(12강) 순으로 학습을 밟아 보겠습니다. 다들 웹 개발이라는 하나의 이슈를 궁극적으로 지향한다 하겠습니다.
초 간단 server, client 프로그램을 만들어 보겠습니다. 먼저 server 사이드입니다. socket.socket 으로 IPV4 address family와 TCP socket stream을 정의해줍니다. 호스트네임, 포트를 하나로 묶어 줍니다. 그리고선 queue를 여유있게 배정해줍니다. True 조건인 동안, clientsocket 에서 보내온 메시지를 받아냅니다.
다음 client 사이드입니다. 동일한 호스트네임, 포드에 connect해 여유있게 buffer size를 주고선 서버로 부터 메시지를 받아내고선 decode 해서 뿌려줍니다.
import socket
# create the socket
# AF_INET == ipv4
# SOCK_STREAM == TCP
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((socket.gethostname(), 1234))
s.listen(5) # queue of five
while True:
# now our endpoint knows about the OTHER endpoint.
clientsocket, address = s.accept()
print(f”Connection from {address} has been established!”)
clientsocket.send(bytes(“Welcome to the server!”,”utf-8″))
clientsocket.close()
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((socket.gethostname(), 1234))
full_msg = ”
while True:
msg = s.recv(😎 #8 bytes long
if len(msg) = 0:
break
full_msg += msg.decode(“utf-8”)
print(full_msg)

원본 비디오: https://www.youtube.com/watch?v=Lbfe3-v7yE0&t=190s

source

ipv4

Alice AUSTIN

Alice AUSTIN is studying Cisco Systems Engineering. He has passion with both hardware and software and writes articles and reviews for many IT websites.

Leave a Reply

Your email address will not be published. Required fields are marked *