728x90
네트워크 응용 서비스
- 네트워크 통신 서비스를 사용/응용하여 최종 사용자에게 제공되는 서비스
- 네트워크에 연결된 2개 이상의 호스트에서 동작하는 프로그램으로 구현
네트워크 구성
- 호스트:: 응용 정보(ex, URL, HTML 페이지)를 교환하고 해석하고 처리
- 스위치(라우터): 네트워크 장치(호스트)를 연결하고 패킷을 교환
패킷
- 응용 정보를 효율적인 교환을 위해 작은 크기로 나눈 정보 단위
- 호스트에서 재조립되어(reassembly) 응용 계층에서 처리
네트워크와 네트워크 응용
- 의미있는 정보를 주고받는 호스트들에서 동작하는 네트워크 응용
- 스위치는 응용 정보 처리에 관여하지 않는다.
네트워크 응용 구조
- 분산 네트워크 응용 프로그램이 작동하는 방식
네트워크 응용 구조 유형
- 클라이언트-서버 구조(Client-server architecture)
- P2P 구조(Peer-to-Peer architecture)
Peer - 서로 대등한 관계를 가지는 실체를 표현
클라이언트-서버 구조 동작 방식
- 항상 클라이언트 응용 프로그램은 요청하고, 서버 응용 프로그램은 응답을 수행
클라이언트(Client)
- 서버에게 응용 서비스 요청(클라이언트간 통신 안함)
- 필요할 때만 작동
- 동적(임시) IP 주소 사용 가능
서버(Server)
- 다수의 클라이언트의 서비스 요청에 응답
- 항상 작동(Always-on)
- 고정 또는 그에 준하는 IP 주소 사용
- 확장성(scalabillity) 문제
P2P 구조 동작 방식
- 임의의 호스트간에 직접 통신하고, 각 호스트는 클라이언트 역할과 서버 역할을 동시에 수행한다.
- 호스트간의 관계가 대등(peer-to-peer)
P2P 구조 장점
- 서버 의존성이 없다.
- 구축 및 관리 비용이 낮다.
- 자가 확장성(Self-scalabillity)
P2P 구조 문제점
- 보안 취약성(Security)
- 낮은 신뢰성(Relabillity)
- 낮은 성능(Perfomance)
네트워크 응용 프로세스와 응용 프로토콜
네트워크 응용 프로세스(application process)
- 호스트에서 네트워크를 통해 응용 메시지를 교환하며 작동하는 프로그램
응용 프로토콜(application protocol)
- 네트워크 응용 프로그램 간의 응용 메시지 교환
- 응용 프로세스의 일부
클라이언트 프로세스(client process)
- 통신을 개시하는 응용 프로세스
서버 프로세스(server process)
- 클라이언트의 통신 요청을 기다리는 응용 프로세스
네트워크 응용 프로세스와 트랜스포트 프로토콜
소켓(Socket)
- 응용 프로세스가 네트워크로 메시지를 송신하고 수신하는 통로 자료ㅛ구조
- 트랜스포트 계층 상에서 구현
소켓 API(Application Programming Interface)
- 소켓 자료구조를 사용하여 통신 서비스를 제공하는 프로그램 인터페이스
- API를 사용하여 응용 프로그램 구현
응용 프로세스 주소
트랜스포트 프로토콜
- TCP(Transmission Control Protocol)
- UDP(User Datagram Protocol)
TCP
- 응용 프로세스간 신뢰 전송
- 저성능 전송
UDP
- 응용 프로세스간 비신뢰 전송
- 고성능 전송
응용 프로토콜과 트랜스포트 프로토콜
e-mail, remote terminal access, Web, file transfer은 중간에 데이터가 손실되면 치명적이기에 TCP를 사용
streaming multimedia, Internet telephony는 중간에 데이터가 어느정도 손실되도 괜찮기에 UDP를 사용하여도 된다.
728x90
'Computer Network' 카테고리의 다른 글
[컴퓨터 네트워크] 웹과 HTTP(2): 메시지, 쿠키, 캐시 (0) | 2022.09.25 |
---|---|
[컴퓨터 네트워크] 웹과 HTTP(1): 동작 원리와 지속 비지속 연결 (0) | 2022.09.25 |
[컴퓨터 네트워크] 네트워크 사이버 공격(Network Attacks) (1) | 2022.09.21 |
[컴퓨터 네트워크] 프로토콜 계층 구조 (1) | 2022.09.18 |
[컴퓨터 네트워크] 네트워크 코어(Network Core) (0) | 2022.09.15 |
댓글