03 통신 서비스와 프로토콜
Intro
통신서비스와 프로토콜
통신서비스는 컴퓨터 속에 있는 프로그램끼리 정보를 주고 받아 이루어진다.
서버: 서비스 제공기능
클라이언트: 서비스를 받는 기능
대부분의 통신 서비스는 서버와 클라이언트의 주고받기 형태
application protoccol: 서버와 클라이언트 간에 수행되는 서비스 고유의 주고받기 '약속'
서버와 클라이언트
서버(server): 서비스를 제공하는 측
서비스를 제공하는 기능을 가지고 있는 프로그램.
서비스 종류에 맞게 다양한 서버가 있음.
클라이언트(client): 서비스를 받는 측
서비스를 요청하고 사용자가 알 수 있는 형태로 표시하는 기능을 가진 프로그램.
데이터가 어디있지?
서버에게 데이터 요청시, 데이터 있는곳을 확실히 표시할 필요가 있음.
네트워크 상에서 자원이 어디 있는지 알려주기위한 규약
URL: 네트워크 상에 있는 특정 데이터 등을 표시할 때 사용
예: https://www.blabla.co.kr:80/src/components/index.html
https: 스키마, 서비스의 종류를 나타냄(종류: http, https, mailto, ftp, telnet,file)
www.blabla.co.kr: 도메인, 서버(숫자도 가능)
80: 포트번호, application protocol 식별번호. (스킴명에 의해 판단가능, 생략가능)
src/compoennts: 경로, 서버 내 파일 주소
index.html 파일 이름
gTLD(generic Top Level Domain): com, net, org, biz, info 와 같이 나라 관계없이 사용하는 조직속성(국가코드 필요X)
ccTLD:국내에서만 사용가능한 조직 속성: 예: co.kr
WWW
(world wide web)
하이퍼텍스트(HyperText): 참조(하이퍼링크)를 통해 독자가 한 문서에서 다른 문서로 즉시 접근할 수 있는 텍스트.
웹페이지는 하이퍼텍스트라는 문서로 작성되어 있음.
따라서, 전 세계 인터넷에서 정보를 공개하고 공유하는 서비를 가리켜 WWW라고 함.
www browser(application)
www에 대한 클라이언트
서버로부터 받은 데이터를 사용자가 알기 쉬운 형식으로 표시
WWW 개요
[WWW브라우저(클라이언트)] <= [HTTP:Hyper text transfer protocol] => [WWW서버]
전자메일
예: minhee@gmail.com
minhee: 메일 계정, 사용자 고유의 문자열
@: at(~에있는)
gmail.com: 도메인, 메일박스가 있는 서버의 주소
전자메일 개요
[메일러(클라이언트 송신)] =>(SMTP(프로토콜))=> [메일서버(송신)] =>[메일서버(수신)] => (POP) => [메일러(클라이언트 수신)]
SMTP서버: 메일 전송을 담당하는 프로그램
POP서버: 클라이언트에게 메일 제공을 담담하는 프로그램
파일전송
대표: FTP (File Transfer Protocol)
FTP서버 내에 미리 전송 공간을 확보해두고, 클라이언트가 파일 업로드하거나 다운로드가 가능하게 함.
FTP 클라이언트: 전용에플리케이션이나 FTP서비스를 처리하는 www브라우저 등
[통신이 허용된 클라이언트] < 데이터 전송 > [FTP서버(특정 전송 공간)]
FTP 는 보안에 문제 있을 수 있어, 암호화해서 전달하는 FTPS, SFTP를 권장.
원격 로그인
떨어져 있는 장소의 다른 컴퓨터를 조작할 수 있는 서비스.
대표: Telnet
Telnet 클라이언트: telnet 명령이나 테라텀이라는 app
test: telnet naver.com 80 => 성공시, Telnet naver.com이라고 뜨고 기본포트열림(80)
클라이언트의 명령(command)가 서버로 보내지고, 처리결과가 클라이언트로 반환
서버측의 OS에 맞추어 명령 사용
SSH(Secure Shell)
다른 컴퓨터에 로그인할 때, 통신을 암호화하는 프로토콜
Telnet에는 암호화 기능이 없기때문에, SSH로 명령을 암호화 해서 보냄.
(제 3자가 패킷을 훔쳐가더라도 해독이 어려움)
데스크톱 공유
통신프로토콜(RDP: Remote Desktop Protocol)
네트워크상 다른 컴퓨터의 desk top 환경에 접속해 조작하는 기술
윈도우: 원격 데스크톱
MacOS: 화면공유
파일공유
파일이나 에플리케이션 등을 다른 사용자와 함께 사용할 수 있도록 하는 통신 서비스
OS에 따라 다른 프로토콜
UNIX (Samba) - Windows
같은 OS 환경끼리면, 별도로 필요한 app 은 없음
주로 사용되는 프로토콜
Windows: SMB(Server Message Block), CIFS(Common Internet File System)
UNIX: NFS(Network File System)
기타서비스
IP
VoIP(Voice over IP): 상대의 전화번호나 음성 데이터를 패킷화 해서 전달하는 기술
IP 전화: VoIP기술을 사용해서 인터넷이나 독자적인 네트워크에서 통신하는 전화서비스
IP전화가 일어나는 2가지 공정
SIP (Session Initiation Protocol): 전화 걸어서 상대에게 호출되기까지 공정
RTP(Real Time Transport Protocol) or RTCP(RTP Control Protocol):
: 실제 대화가 시작된 후 주고받는 공정
IM(인스턴트 메신저)
미리 등록한 클라이언트(멤버)가 통신할 수 있는 상태인지 아닌지 상태 표시하고 실시간으로 통신할 수 있는 서비스
IM용서버를 통해 상대의 상태 체크, 메세징, 음성통신, 전자회의를 할 수 있음
상대의 상태로는 오프라인, 자리비움, 온라인등의 표시가 가능
IM은 기능마다 개별 프로토콜을 사용하며, 통일 되어 있지 않기 때문에 다른 클라이언트 끼리는 통신 할 수 없음
Last updated