스마트테크

정보통신기술 용어 : Socket 통신과 HTTP 통신, 프로토콜, IP, 포트

황기자님 2022. 3. 2. 22:44
728x90

 

1. 소켓 통신

  • 소켓이란 두 프로그램이 서로 데이터를 주고 받을 수 있도록 생성되는 통신 단자 (프로토콜, IP, 주소, 포트 넘버로 정의)
  • Server와 Client가 특정 Port를 통해 실시간으로 양방향 통신을 하는 방식
  • 클라이언트도 서버로 요청을 보낼 수 있고 서버도 클라이언트로 요청을 보낼 수 있음
  • 보통 실시간 동영상 스트리밍이나 실시간 채팅, 온라인 게임 등 실시간으로 데이터를 주고 받아야 하는 경우에 사용됨
  • HTTP통신은 Connection을 자주 맺고 끊는 데 반해, 소켓통신은 계속해서 Connection을 들고 있음. 이로 인해 Socket통신은  HTTP 통신에 비해 많은 리소스가 소모됨

 

2. HTTP 통신

  • HTTP란 HyperText Transfer Protocol의 약자, HTML 파일을 전송하는 프로토콜이라는 의미
  • Client의 요청(Request)이 있을 때만 서버가 응답(Response)하여 해당 정보를 전송하고 곧바로 연결을 종료하는 방식 (단방향 통신)
  • 초기에는 HTML 파일을 전송하려는 목적으로 만들어졌으나 현재는 JSON, Image 파일 등 다양한 파일을 전송받을 수 있음 
  • 응답을 받은 후 Connection이 끊어지는 것이 기본 동작이지만, 성능상으로 필요하다면 Keep Alive 옵션을 주어 일정 시간 동안 Connection 유지 가능

 

3. 프로토콜

  • 원래 외교상의 언어, 국가간에 약속을 의미, 통신에서는 어떤 시스템이 다른 시스템과 통신을 원활하게 수용하도록 해주는 통신 규약을 의미

 

4. IP

  • 전 세계 컴퓨터에 부여된 고유의 식별 주소

 

5. 포트(Port)

  • 네트워크상에서 통신하기 위해서 호스트 내부적으로 프로세스가 할당받아야 하는 고유한 숫자
  • 한 호스트 내에서 네트워크 통신을 하고 있는 프로세스를 식별하기 위해 사용 되는 값
  • 같은 호스트 내에서 서로 다른 프로세스가 같은 포트 넘버를 가질 수 없음

 

 

 

728x90
반응형