네트워크

[TCP/IP가 보이는 그림책] 2. 통신 서비스와 프로토콜

Stitchhhh 2025. 4. 13. 23:27

서버와 클라이언트

통신 서비스의 기본이 되는 것이 '서버'와 '클라이언트'의 개념입니다.

서비스를 제공하는 측, 제공받는 측

서비스를 제공하는 측을 서버, 서비스를 받는 측을 클라이언트라고 합니다. TCP/IP를 사용한 많은 서비스는 '서버와 클라이언트의 주고받기'라는 형태로 이루어집니다.

 

데이터가 어디 있지?

서버에서 '이 데이터가 필요해'라고 요청할 때는 데이터가 있는 곳을 확실히 표시할 필요가 있습니다.

URL이란?

네트워크 상에 있는 특정 데이터 등을 표시할 때 사용되는 것이 URL입니다. URL 구조는 다음과 같습니다.

URL : http://ww.cyber.co.kr:80/picbook/gabsoon/index.html

  • 스킴명 : http(서비스의 종류를 나타냅니다.)
  • 도메인 : www.cyber.co.kr(서버를 나타냅니다. 숫자인 경우도 있습니다.)
  • 포트 번호 : 80(애플리케이션 프로토콜을 식별하는 번호입니다. 스킴명에 의해 판단할 수 있으므로 생략할 수 있습니다.)
  • 경로 : pickbook/gabsoon(서버 내에서 파일의 주소입니다.)
  • 파일명 : index.html(파일명은 생략할 수도 있습니다.)

스킴명

스킴명은 서비스를 나타내며 다음과 같은 것들이 있습니다.

스킴명 서비스 종류
http WWW
https www(SSL/TLS)
ftp 파일 전송
mailto 전자메일
telnet 원격 로그인
file 로컬 파일

도메인

도메인 구조를 좀 더 세분화 해서 살펴보겠습니다. .(피리어드)로 구분됩니다.

  • 서버명 : www(www은 www 서버에 많이 사용됩니다)
  • 조직명 : cyber(조직의 고유한 문자열입니다.)
  • 조직 속성 : co(교육 긱관이나 기업 등 조직의 속성을 나타내는 문자열입니다. 나라마다 다릅니다.)
  • 국가코드 : kr(나라마다 정해진 코드입니다.)

gTLD와 ccTLD

'com'이나 'org' 등 나라에 관계없이 사용할 수 있는 조직 속성을 gTLD(일반 최상위 도메인)라고 합니다. gTLD를 사용하는 경우 국가 코드는 필요없습니다. 한편 국내에서만 사용 가능한 조직 속성을 ccTLD라고 합니다.

 

WWW

인터넷이라고 하면 단연 웹 페이지 열람입니다. 이것을 구현하는 서비스를 WWW라고 합니다.

WWW(World Wide Web)

웹 페이지는 페이지의 일부분에 다른 페이지의 위치 정보를 심어놓음으로써 양쪽을 연결할 수 있는 하이퍼텍스트라는 문서로 작성됩니다.

하이퍼텍스트를 사용하여 전 세계 인터넷에서 정보를 공개, 공유하는 서비스를 WWW 서비스라고 합니다.

WWW 브라우저

WWW에 대한 클라이언트가 되는 것은 WWW 브라우저라는 애플리케이션입니다. 서버로부터 받은 데이터를 사용자가 알기 쉬운 형식으로 표현합니다.

WWW 개요

WWW는 WWW 서버와 WWW 브라우저의 주고받기로 이루어집니다. 주고받기는 HTTP이라는 프로토콜을 기초로 일어납니다.

 

전자메일

네트워크를 우편망으로 가정하고 사용자끼리 주고받을 수 있는 전자메일 서비스의 개요를 잠깐 들여다봅시다.

전자메일 서비스

사용자끼리 문자나 파일을 손쉽게 주고받을 수 있는 서비스로 전자메일 서비스가 있습니다. 실제 우편 시스템과 다른 점은 메일의 주고받기가 서로의 메일 박스를 사이에 두고 일어난다는 점입니다.

메일러

전자메일 서비스에 대해 클라이언트가 되는 것은 메일러라는 애플리케이션입니다.

전자메일 개요

전자메일 서비스는 메일 서버와 메일러의 주고받기로 이루어집니다. 주고받기에는 주로 두 개의 프로토콜이 사용됩니다.

SMTP를 사용하여 메일 전송을 담당하는 프로그램을 SMTP 서버, POP를 사용하여 클라이언트에게 메일 제공을 담당하는 프로그램을 POP 서버라고 합니다. 일반적으로 한 대의 컴퓨터가 SMTP 서버와 POP 서버를 겸임하고 있습니다.

 

파일 전송

파일 전송은 효율적으로 파일을 주고받기 위한 서비스로, FTP 서비스가 대표적입니다.

파일 전송

컴퓨터 간에 파일을 간단히 주고받을 수 있는 서비스로 파일 전송 서비스가 있습니다. WWW 서버에 웹 페이지의 데이터를 업로드할 때 사용됩니다.

파일 전송 서비스로는 FTP 서비스가 유명합니다. FTP 서버 내에 미리 전송 공간을 확보해두고 클라이언트가 파일을 업로드하거나 다운로드할 수 있도록 합니다.

FTP 클라이언트

FTP 서비스에서 클라이언트가 되는 것은 전용 애플리케이션잉나 FTP 서비스를 처리하는 WWW 브라우저 등입니다.

FTP의 개요

FTP 서비스는 FTP 서버와 FTP 클라이언트의 주고받기에 의해 이루어집니다. 주고 받기는 FTP라는 프로토콜을 기초로 수행됩니다.

FTP에서는 데이터가  평문으로 전송되므로 보안에 문제가 있습니다. 현재는 데이터를 암호화해서 전송하는 FTPS나 SFTP를 권장합니다.

 

원격 로그인(1)

'집 컴퓨터에서 회사 컴퓨터를 조작할 수 있다면...' 그런 바람을 들어주는 서비스가 원격 로그인입니다.

원격 로그인

떨어진 장소에 있는 다른 컴퓨터를 조작할 수 있는 서비스입니다. 상대 컴퓨터에  들어가서 조작하므로 원격 로그인이라고 합니다. 대표적인 서비스로는 텔넷이 있습니다.

Telnet 클라이언트

텔넷에서 클라이언트가 되는 것은 telnet 명령이나 테라 텀이라는 애플리케이션입니다. 이런 애플리케이션은 기본적으로 CUI 환경에서 작동합니다.

Telnet의 개요

Telnet 서비스에서는 클라이언트 측의 키보드를 사용하여 입력한 명령이 서버로 보내져서, 거기서 처리된 결과가 클라이언트로 반환되어 옵니다. 서버와 클라이언트의 주고받기는 TELNET이라는 프로토콜을 기초로 수행됩니다.

 

원격 로그인(2)

원격 로그인에서 이용되는 SSH와 원격 로그인의 일종인 원격 데스크톱을 소개합니다.

SSH(Secure Shell)

다른 컴퓨터에 로그인할 때 통신을 암호화하는 프로토콜입니다. Telnet에는 암호화 기능이 없으므로, 도청되어 정보가 누설될 위험이 있습니다.

데스크톱 공유

네트워크상의 다른 컴퓨터의 데스크톱 환경에 접속해 파일이나 애플리케이션을 조작하는 기술입니다. 윈도우에서는 원격 데스크톱으로 지원됩니다. 원격 데스크톱 연결을 이용하려면 다음과 같은 조건이 필요합니다.

  • 전원이 켜져 있어야 한다.
  • 네트워크에 연결되어 있어야 한다.
  • 원격 데스크톱 기능이 활성화 되어 있고, 액세스를 허가했다.
  • RDP 통신 프로토콜을 이용한다.

 

파일 공유

파일 등을 다른 사용자와 공통으로 사용할 수 있도록 하는 상태를 '공유'라고 합니다.

파일 공유

파일이나 애플리케이션ㄴ 등을 다른 사용자와 함께 사용할 수 있도록 하는 통신 서비스도 있습니다. 이 서비스에서는 공유한 애플리케이션 파일을 서로 다른 컴퓨터상에서 실행할 수도 있습니다. 파일 공유에서 사용되는 프로토콜은 OS에 따라 달라집니다.

파일 공유의 개요

파일 공유는 클라이언트가 수행한 조작을 서버로 실시간으로 보냄으로써 이루어집니다. 이 서비스에서 주로 사용되는 프로토콜은 Windows의 경우는 SMBCIFS, UNIX의 경우는 NFS입니다.

 

기타 서비스

그 외에도 IP 전화나 인스턴스 메신저 등의 통신 서비스가 있습니다.

IP 전화

상대의 전화번호나 음성 데이터를 패킷화시켜 전달하는 기술을 VoIP라고 합니다. 이 기술을 사용하여 인터넷이나 독자적인 네트워크에서 통신하는 전화 서비스를 IP 전화라고 합니다.

IP 전화 서비스는 두가지 공정으로 이루어집니다. 상대에게 다이얼을 돌려서 호출하기까지는 SIP, 실제로 대화가 시작된 후로는 RTP 또는 RTCP라는 프로토콜을 기초로 주고받기를 수행합니다.

인스턴스 메신저(IM)

미리 등록한 다른 클라이언트가 통신할 수 있는 상태인지 아닌지를 확인하여 그 상태를 표시하고 실시간으로 통신할 수 있는 서비스입니다.

IM에서는 기능마다 개별 프로토콜이 사용됩니다. 주요 클라이언트로는 Skype, LINE 등이 있지만, 프로토콜이 통일되어 있지 않기 때문에 다른 클라이언트끼리는 통신할 수 없습니다.