3. 응용 계층

태규 최·2022년 1월 6일
0

네트워크

목록 보기
3/8

네트워크 계층부터는 운영체제에 커널에 정의가 되어있다.

응용 계층의 예시

  • 게임
  • 구글 검색
  • 메일
  • 클라우드 서비스

네트워크 응용의 구조

Client - Server 구조

  • 웹 검색

  • 서비스와 서비스 제공자가 분리되어 있다.

  • 중심적인 서비스를 제공하는 서버가 있다.

  • 서비스양이 많아지면 서버에 부하가 온다.

Peer to Peer 구조

  • 토렌트

  • 사용자들끼리 직접 통신한다.
  • 통신을 원할때 하지 못할 가능성이 있다.

하이브리드 구조

  • skype

  • 게임

  • 필요할때는 서버가 관리하지만 직접 연결이 가능하면 끝단 끼리 연결을 한다.

프로세스간 통신

프로세스의 종류

  • 서버 프로세스
  • 클라이언트 프로세스
  • 피어 프로세스

응용의 개념 : 네트워크로 연결된 컴퓨터들이 협력하여 제공하는 서비스 예) 구글 검색
프로세스의 개념 : 하나의 컴퓨터에서 독립된 메모리 공간을 가지고 수행되고 있는 프로그램

응용 계층 서버 클라이언트 구조에서는 클라이언트 프로세스와 서버 프로세스간 요청과 응답을 한다.

프로세스 주소

  • 기계 주소 - IP
    IP는 약 40억개가 생성이 가능하다!

  • 포트 번호 : TCP와 UDP는 2^16개가 있다.

    서로간에 포트번호와 IP 주소를 알면 서로의 통신이 가능하다

    소켓 통신

    기존 클라이언트 서버 통신에서는 반복해서 똑같은 내용을 여러 번 전송해야하는 불편함이 있음.

    별도의 통신채널인 소켓을 만들어서 실시간으로 통신을 할 수가 있다.

    TCP

  • 연결 기반 전송 계층

  • 프로세스간 가상 연결을 해야 한다.

  • 연결에 대한 관리를 한다.

  • 데이터 유실에 대해 검증을 한다.

  • 데이터 순서 보장

  • 혼잡에 민감한 패킷전송률 조정

    UDP

  • 무연결 전송 계층

  • 프로세스간 연결이 되어 있지 않다.

  • 데이터 유실 가능

  • 데이터 순서가 역전이 가능하다.

    FTP (File Transfer Protocol)

    원격 호스트에 있는 파일을 가져오거나 원격 호스트에 파일을 보내기 위한 프로토콜

    클라이언트 사용자가 사용하는 서버와 파일을 읽을 수 있는 권한의 계정이 있다.

    계정이 없는 경우도 접근가능

    FTP의 특징

  • 세션 로그인과 종료가 존재한다.

  • 로그인을 통해서 권한을 획득한다.

  • 로그인 정보를 서버가 관리

  • Stateful 프로토콜

0개의 댓글