컴퓨터 네트워크/Ch2. 애플리케이션 계층

    7. 소켓 프로그래밍: 네트워크 애플리케이션 생성

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 소켓 프로그래밍 네트워크 애플리케이션을 생성할 때는 클라이언트와 서버 프로그램 두 프로그램을 작성해야한다. 두 프로그램을 실행하면 프로세스가 생성되고, 두 프로세스가 소켓으로부터 읽고 쓰기를 통해 서로 통신한다. 클라이언트 - 서버 애플리케이션에는 두가지 형태가 있다. HTTP 등의 RFC에 정의된 표준 프로토콜을 구현하는 클라이언트-서버 애플리케이션. 이 애플리케이션을 구현할 때 그 프로토콜과 연관된 port를 사용하여야한다. 개인의 독점적인 네트워크 애플리케이션으로 RFC 또는 다른 곳에 공식적으로 출판되지 않은 애플리케..

    6. 비디오 스트리밍과 콘텐츠 분배 네트워크

    6. 비디오 스트리밍과 콘텐츠 분배 네트워크

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 인터넷 비디오 녹화된 비디오: 온 디멘드 방식(요구 사항에 따라 즉시 제공/ 공급 하는 방식) 네트워킹 츨면에서 비디오의 가장 두드러진 특성: 높은 비트 전송률 HTTP 스트리밍 및 대쉬(DASH) HTTP 스트리밍에서 비디오는 HTTP 서버 내의 특정 URL을 갖는 일반적인 파일로 저장됨 사용자가 비디오 시청을 원함 ⇒클라이언트는 서버에게 TCP 연결을 설립하고 해당 URL에 대한 HTTP GET 요청을 발생시킴 - 문제점 모든 클라이언트들이 그들 사이의 가용 대역폭의 차이에도 불구하고 똑같이 인코딩된 비디오를 전송받음 -..

    5. P2P 파일 분배

    5. P2P 파일 분배

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 피어는 서비스 제공하자 소유하는 것이 아니라 사용자가 제어하는 데스크톱과 랩톱이 소유한다 각 피어는 수신한 파일의 임의의 부분을 다른 피어들에게 재분배ㄱㄴ⇒서버의 분배 프로세스 도울 수 예시) 비트토렌트 비트토렌트는 P2P 파일 전송 프로토콜의 이름이자 그것을 이용하는 응용 소프트웨어의 이름이다. 비트토렌트를 이용하면 파일을 인터넷 상에 분산하여 저장하여 놓고 다수의 접속을 사용하여 여러 곳에서 동시에 파일을 가져오게 되어 전송 속도가 빨라진다 구글 독스나 스프레드시트는 SaaS(Software as a Service) 방식..

    4. DNS: 인터넷의 디렉터리 서비스

    4. DNS: 인터넷의 디렉터리 서비스

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 DNS-인터넷의 디렉터리 서비스 사람을 여러가지 방법으로 식별할 수 (이름, 주민번호) 있는 것처럼, 인터넷 호스트도 마찬가지다. 호스트에 대한 하나의 식별자는 호스트 네임이다. 호스트 네임은 가변 길이의 알파뉴메릭(영숫자) 문자로 구성되므로 라우터가 처리하는 데 어려움이 있어서 호스트는 IP주소로도 식별된다 DNS가 제공하는 서비스 https://namu.wiki/w/DNS DNS - 나무위키 DNS 서버가 질의 받은 도메인 또는 IP 주소의 레코드를 Forward Zone, Reverse Zone 중 하나 이상 가지고 있..

    3. 인터넷 전자메일

    3. 인터넷 전자메일

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 전자메일은 비동기적인 통신매체 애플리케이션 계층 프로토콜은 인터넷 전자메일 구조의 중심에 있다 정상적인 전자메일 송수신 수신자는 각 메일 서버 안에 메일 박스를 갖고 있음 송신자의 사용자 에이전트에서 메시지 전달 송신자의 메일 서버를 거침 수신자의 메일 서버로 전달됨 수신자의 메일 박스에 저장됨 수신자가 메일 박스에 있는 메시지를 보려면 ⇒ 메일 서버는 사용자 계정과 비밀번호를 이용하여 수신자임을 인증한다 에러 상황 발생 시 수신자 메일 서버 고장이 일어났을 때 송신자 서버는 그 메시지를 메시지 큐에 보관하고 나중에 그 메시..

    2. 웹과 HTTP

    2. 웹과 HTTP

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 HTTP 개요 HTTP : 웹의 애플리케이션 계층 프로토콜 ==> 클라이언트 프로그램 & 서버 프로그램으로 구현됨 ==> 서로 다른 호스트에서 수행되는 클라이언트 프로그램과 서버 프로그램은 HTTP를 통해 통신함 웹 용어 - 웹 페이지 객체로 구성됨 객체 : HTML파일, JPEG 이미지, GIF 이미지, 자바 애플릿, 오디오 클립 HTML 파일은 페이지 내부의 다른 객체를 그 객체의 *URL로 참조함 *URL : [객체를 갖고 있는 서버의 호스트 네암] + [객체의 경로 이름] 으로 구성 💡 http://www.naver...

    1. 네트워크 애플리케이션의 원리

    1. 네트워크 애플리케이션의 원리

    Reference : 컴퓨터 네트워킹 하향식 접근 [8판] / 퍼스트 북 / James F. Kurose, Keith W. Ross 건국대학교 컴퓨터 네트워크 수업 / 김기천 교수님 네트워크 애플리케이션 구조 네트워크 구조 고정되어 있고 애플리케이션에 특정 서비스 집합을 제공 애플리케이션 구조 (application architecture) 개발자에 의해 설계됨 종단 시스템에서 어떻게 조직되어야 하는지 지시 [구조 종류 2가지] - 클라이언트 - 서버 구조 설명 서버: 항상 커져 있는 호스트 클라이언트: 가끔 or 항상 켜짐 클라이언트에서 실행되는 브라우저가 웹서버로 서비스를 요청 특징 클라이언트는 서로 직접적으로 통신하지 않음 서버가 고정 IP 주소를 가짐 예시(이 구조로 잘 알려진 것들) 웹, 파일 ..