티스토리 뷰

반응형

HyperTest

여러 문서를 상호간에 관련 짓는 것

 

WWW의 구성 기술

  • 문서 기술 언어: HTML
  • 문서 전송 프로토콜: HTTP
  • 문서 주소 지정하는 방법: URL

 

WWW의 의미

  • 초기: 하이퍼텍스트를 열람할 수 있는 클라이언트 애플리케이션의 명칭 (현재의 웹 브라우저)
  • 현재: 시스템의 명칭

 

HTTP의 진화

  • HTTP/0.9 : HTTP 1.0 이전이라는 의미
  • HTTP/1.0 : 최초로 정식 사양으로 공개
  • HTTP/1.1 : 현재 가장 많이 사용되는 것

 

TCP

  • HTTP는 TCP/IP 프로토콜 중의 하나
  • TCP/IP는 프로토콜의 집합
💡 프로토콜

통신을 위한 규칙

 

TCP/IP 4계층

  • 애플리케이션 계층: 유저에게 제공되는 애플리케이션에서 사용하는 통신의 움직임 결정
  • 트랜스포트 계층: 애플리케이션 계층에 네크워크로 접속되어 있는 컴퓨터 사이에 데이터 흐름을 제공 (ex) TCP, UDP
  • 네트워크 계층: 패킷의 이동 관리 (패킷: 전송하는 데이터의 최소 단위)
  • 링크 계층: 하드웨어적인 면을 처리

 

계층화의 장점

  • 버전의 변경이 있다면, 변경된 계층만 수정하면 됨
  • 설계가 편리

 

TCP/IP 통신의 과정

  • 계층을 순서대로 거쳐 상대와 통신
  • 송신하는 층은 애플리케이션 계층에서부터 내려가고 수신하는 측은 애플리케이션 계층으로 올라감

 

HTTP를 통한 통신의 흐름 - 송신자의 예

  1. 애플리케이션 계층: 접속할 웹 페이지에 대한 HTTP 리퀘스트 지시
  2. 트랜스포트 계층: 1에서 받은 데이터(HTTP 메시지)를 통신하기 쉽게 조각내어 안내 번호와 포트 번호를 붙여 네트워크 계층에 전달
  3. 네트워크 계층: 수신지 MAC 주소를 추가하여 링크 계층에 전달
  4. 네트워크를 통해 송신
💡 캡슐화

헤더에 해당 계층에 필요한 정보를 추가

 

IP(Internet Protocol)

  • 네트워크 층에 해당
  • 'IP' != 'IP 주소' : 두 개는 다른 것이다!
  • 패킷의 상대방에게 전달하는 역할
  • IP 주소: 각 노드에 부여된 주소
  • MAC 주소: 각 네트워크 카드에 할당된 고유의 주소

 

IP 통신은 MAC 주소에 의존해서 통신

  • ARP(Address Resolution Protocol)와 MAC 주소를 사용하여 목적지를 찾음
  • ARP: 주소를 해결하기 위한 프로토콜. 수신지의 IP 주소를 바탕으로 MAC 주소를 조사.

 

TCP (Transfer Control Protocol)

  • 트랜스포트 층에 해당
  • 신뢰성 있는 바이트 스트림 서비스 제공
    • 바이트 스트림 서비스: 용량이 큰 데이터의 전송을 위해 TCP 세그먼트라고 불리는 단위 패킷으로 작게 분해하여 관리하는 것
  • 대용량의 데이터를 보내기 쉽게 작게 분해하여 상대방에게 보내고 정확하게 도착했는지 확인

 

three way handshaking

  • TCP의 데이터 전송 방식
  • 'SYN'과 'ACK'라는 TCP 플래그를 사용하여 패킷을 보내고, 전송 여부를 확인
    • 송신측은 SYN 플래그로 상대에게 접속함과 동시에 패킷을 보냄
    • 수신측은 SYN/ACK 플래그로 송신측에 접속함과 동시에 패킷을 통신한 사실을 전함
    • 송신측은 ACK 플래그로 패킷 교환이 완료되었음을 전함

 

DNS(Domain Name System)

  • 응용 계층 시스템
  • 도메인 이름과 IP 주소 이름 확인을 제공
  • 도메인명에서 IP 주소를 변환하거나 IP 주소를 도메인명으로 변환

google.com에 접속을 할 때

  1. 클라이언트는 DNS에 웹 페이지의 IP 주소를 요청
  2. DNS는 클라이언트에게 IP 주소를 전송
  3. 클라이언트는 HTTP 담당 웹 서버에게 보낼 HTTP 작성
  4. TCP는 HTTP 메시지를 패킷으로 분해
  5. IP는 상대가 어디에 있는지 찾아 전송
  6. TCP는 상대방으로부터 패킷 수신하여 분해된 패킷을 조립
  7. 웹 서버에 대한 리퀘스트 처리

 

URL(Uniform Resource Locator)

웹 페이지를 표시하기 위해 입력하는 주소

 

URI(Uniform Resource Identifier)

리소스 식별자
  • Uniform: 통일된 서식
  • Resource: 식별 가능한 모든 것
  • Identifier: 식별 가능한 것을 참조

 

💡 URL 🆚 URI

URI는 리소스를 식별하기 위한 문자열 전반, URL은 리소스의 장소(네트워크 상의 위치)이다. URL은 URI의 부분집합이다.

 

URL

http://user:pass@www.sdardew.com:8080/dir/index.htm?uid=1#valley

  • http://
    •  스키마
    • 리소스를 얻기 위해 사용하는 프로토콜 표현
    • 대소문자 구분 없음
    • 마지막에 콜론 ( : )이 붙음
  • user:ass
    • 자격 정보
    • 서버로부터 리소스 취득을 위한 자격 정보
    • 유저명과 패스워드를 지정
    • 옵션
  • www.sdardew.com
    • 주소
  • 8080
    • 포트 번호
    • 생략시에는 디폴트 포트 번호가 사용됨
    • 옵션
  • dir/index.htm
    • 계층적 파일 위치
    • 리소스를 식별
    • 서버 상의 파일 위치
  • uid=1
    • 쿼리 문자열
    • 리소스에 넘겨줄 파라미터
    • 옵션
  • valley
    • 프래그먼트 식별자
    • 서브 리소스를 가리킴
    • 옵션
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함