상세 컨텐츠

본문 제목

Socket 프로그래밍

네트워크프로그래밍

by 리액트바오 2025. 8. 12. 14:55

본문

용어

다중 작업 (Multi Tasking)

  • 다중처리능력
  • 컴퓨터를 사용할 때, 1가지 작업에서 다른 작업으로 왔다갔다하면서 동시에 여러 일을 할 수 있는 것을 의미

명령어 기반 인터페이스 (CLI)

  • 사용자는 프롬프트가 나타나면 정해진 줄 위에 명령어를 입력하고, 시스템으로부터 이에 대한 응답을 받은 다음, 또다시 다른 명령어를 입력하는 식으로 진행

그래픽 기반 인터페이스 (GUI)

  • 사용자가 편리하게 사용할 수 있도록 입출력 등의 기능을 알기 쉬운 아이콘 따위의 그래픽으로 나타낸 것

 

 

1. 클라이언트와 서버의 개념에 대한 이해

Socket program의 기본 구조

접속 대기 및 요청

통신용 소켓을 생성하고 접속 요청을 한다. (IP주소와 port번호가 필요)

서버가 기다리고 있었다면 accept된다.

그리곤 서버에서 통신용 소켓을 생성

대기하는 소켓을 두고, 연결요청을 받아 별도의 소켓을 만들어 클라이언트와 소통하게 만든다.

데이터 송신 및 수신

송수신 순서를 정한다.

데이어의 포맷에 따라 설계한다. 

 


2. 클라이언트와 서버 모델을 통한 프로그램 설계

 

class에는 변수들이 담겨있다.

변수 + 함수

기능이라는 의미에서 function이 아니라 method라고 지칭한다.

클래스를 이용해서 ovject를 만든다.

public static void main(String[] args) 자바에선 이줄을 완벽하게 동일하게 입력해야한다.

앞에 public이 붙어야하며 클래스 명은 파일명과 같아야한다.

이렇게 메세지를 보내고 받는 코드를 작성후 실행을 해도 소용없다.

왜냐면 서버가 없기 때문이다. 서버를 만들어 줘야한다.

서버를 먼저 실행 시켜 줘야 한다. 

 

 

 

 

출처: 메가존아이티 네트워크프로그래밍 지도교수 윤지수

'네트워크프로그래밍' 카테고리의 다른 글

통신 규약의 필요성과 구성  (0) 2025.08.12
TCP/IP에 대한 이해  (0) 2025.08.12
OSI 7 Layer  (0) 2025.08.11
인터넷의 주소체계와 포트  (0) 2025.08.11
네트워크의 필요성과 분류  (0) 2025.08.11

관련글 더보기