본문 바로가기
WEB & NETWORK/NETWORK

TCP/IP 4계층, 3 way handshake, 4 way handshake

by 띵커베르 2023. 1. 15.
728x90

- 네트워크
  - 노드와 링크가 서로 연결되어 있거나 연결되어 있지 않은 집합체를 의미

- 처리량
  - 링크를 통해 전달되는 단위 시간당 데이터양
  - 단위: bps(bits per second) 초당 전송, 수신되는 비트 수
- 대역폭
  - 네트워크 연결을 통해 흐룰 수 있는 최대 비트 수
- RTT(Round Trip Time) 또는 latency
  - 두 장치를 왕복하는 데 걸린 시간

- 네트워크 토폴로지와 병목 현상
  - network topology 는 노드와 링크가 어떻게 배치되어 있는지에 대한 방식이자 연결 형태
- 버스토폴로지
  - 중앙 통신 회서 하나에 여러개의 노드가 연결되어 공유하는 네트워크 구성
    - 설치비용 적고, 신뢰성 우수, 노드 추가 삭제가 쉽다.
    - 스푸핑이 가능한 문제점
      - 스푸핑: LAN 상에서 송신부 패킷을 송신과 관련 없는 디른 특정 노드에 악의적으로 패킷이 오도록 하는 행위.
    - 중앙회선에 문제가 생기면 전부다 문제가 됨.
- 스타 토폴로지
  - 중앙 노드에 모두 연결된 네트워크 구성
  - 노드추가 삭제 쉽다, 패킷 충돌 가능성 낮음. 에러발생을 쉽게 캐치가능
  - 중앙노드에 장애가 발생하면 전체 네트워크 사용불가, 비용이 고가이다.
- 트리 토폴로지
  - 트리구조 
  - 추가 삭제가 보통(leaf 쪽은 쉬울지몰라도 중간은 힘듦)
  - 버스 토폴로지, 스타 토폴로지의 하이브리드 느낌
- 링형 토폴로지
  - 각가의 노드가 양옆의 노드와 연결하여 전체적으로 고리형태를 띔.
  - 노드수가 증가되어도 네트워크상의 손실이 거의 없고, 충돌 발생 낮음.노드의 고장을 쉽게 발견.
  - 네트워크 구성 변경 어려움, 회선에 장애가 발생하면 전체로 전파
- 메시 토폴로지(망형 토폴로지)
  - 그물망처럼 연결모양
  - 한 달말 장치가 장애가 나도 여려 개의 경로가 존재하여 네트워크 사용 가능, 트래픽 분산 처리
  - 노드 추가가 어렵고 구축비용, 운용비용이 고가임
  - full 메시 토폴로지 구축에는 n * (n - 1) / 2 의 회선이 필요

- 토폴로지는 병목현상을 해결하는 척도가 됨.
- 병목현상
  - 트래픽에 의해 데이터 흐름이 제한되는 상황을 말합니다.

---
`- LAN, NAN, WAN
  - LAN < MAN < WAN
  - LAN: 근거리 통신망 같은 건물이나, 캠퍼스 같은 공간 전송 소곧가 빠르고 혼자하지 않는다.
  - MAN: 대도시 지역 넓은 지역에서 운영됨. 전송 속도 평균 LAN 보다 혼잡
  - WAN: 광역 네트워크를 의미, 국가 또는 대륙 같은 넓은 지역에서 운영. 전송 속도 낮으면 MAN 보다 혼잡.`

  - TCP/IP 4계층 모델, OSI 7계층
    - TCP/IP: 애플리케이션 계층, 전송 계층, 인터넷 계층, 링크 계층
    - OSI 7계층: 
      - (애플리케이션 계층, 프레젠테이션 계층, 세션 계층)
      - (전송계층), (네트워크 계층)
      - (데이터 링크 계층, 물리 계층)
    - 각 계층별로 영향을 받지 않는다.
      - tcp 에서 udp 로 변경했다하여 인터넷을 다시 설치하지 않듯이
    - 애플리케이션 계층
      - FTP, HTTP, SSH, DNS 등 응용 프로그램이 사용되는 프로토콜 계층
      - 웹 서비스, 이메일 등 서비스를 실질적으로 사람들에게 제공
    - 전송 계층
      - 송신자와 수신자를 연결하는 통신 서비스를 제공, 연결 지향, 데이터 스트림, 신뢰성, 흐름제어 등
      - TCP, UDP 등이 있음
      - TCP 는 정말 많이 적을게 많아서 추후 정리할듯, 노트정리한거 긁어야 함.
        - TCP: 순서 보장, 연결지향 프로토콜
        - UDP: 순서 보장하지 않음 ex)영상
      - 가상회선 패킷 교환 방식
        - 각 패킷에는 가상회선 식별자가 포함되며 모든 패킷을 전송하면 가상회선이 해제되고 패킷들은 전송된 순서대로 도착하는 방식
      - 데이터그램 패킷 교환방식
        - 패킷이 독립적으로 이동하며 최적의 경로를 선택, 다른 경로로 전송될 수 있으며 순서도 다를 수 있다.
      - tcp 연결지향: 3way handshake 간략히
        - 1.SYN 단계: 클라이언트는 ISN 을 담아 SYN 을 보낸다.
        - 2.SYN + ACK 단계: 서버는 클라이언트의 SYN 을 수신 서버의 ISN 을 보내는데 +1 값으로 보냄
        - 3.ACK 단계: 클라리언트는 서버의 ISN + 1 한 값인 승인번호를 담아 ACK 를 서버에 보냄
        - *SYN: 연결 요청 플래그
        - *ACK: 응답 플래그
        - *ISN: 초기 네트워크 연결할 떄 할당된 32비트 임의의 시퀀스 번호
      - tcp 연결 해제 과정 4 way handshake
        - 1.클라이언트가 FIN으로 설정된 세그먼트를 전송 후, FIN_WAIT_1 상태로 들어가고 응답을 기다림
        - 2.서버는 클라이언트로 ACK 라는 승인 세그먼트를 보냄. 그리고 CLOSE_WAIT 상태로 들어감. 클라이언트가 세그먼트를 받으면 CLOSE_WAIT_2 상태로 들어감
        - 3.서버는 ACK 를 보내고 일정 시간 이후에 클라이언트레 FIN 이라는 세그먼트를 보냄
        - 4.클라이언트는 TIME_WAIT 상태가 되고 다시 서버로 ACK 를 보내 서버는 CLOSED 상태, 이후 클라이언트는 어느정도 시간을 대기한 후 연결이 닫히고 클라이언트와 서버의 모든 자원의 연결이 해제됨
        - *TIME_WAIT 를 하는 이유
          - 지연 패킷을 위함. 연결이 지연될 경우를 대비.무결성 하기 위함
          - 두 장치의 연결확인 LAST_ACK 상태에서 닫히면 새로운 연결을 할떄 장치는 줄곧 LAST_ACK 로 되어 있기 때문에 접속 오류 발생
        - *TIME_WAIT: CentOS6, ubuntu 는 60초, 윈도우는 4분 설정이 기본
    - 인터넷 계층
      - 장치로부터 받은 네트워크 패킷을 IP 주소로 지정된 목적지로 전송하기 위해 사용됨
      - 상태방이 제대로 받았는지에 대해 보장하지 않는 비연결형적인 특징
    - 링크 계층
      - 전선, 광섬유, 무선 등으로 실질적으로 데이터를 전달, 장치 간에 신호를 주고받는 규칙을 정함
      - 물리계층과 데이터 링크 계층으로 나누기도 함
        - 물리 계층: 무선 LAN 과 유선 LAN 을 통해 0, 1로 이루어진 데이터를 보내는 계층
        - 데이터 계층: 이더넷 프레임을 통해 에러확인, 흐름제어, 접근제어 담당하는 계층
        - 유선 LAN(IEEE802.3): 유선 LAN 을 이루는 이더넷은 IEEE802.3 이라는 프로토콜을 따르며 전이중화 통신을 쓴다.
          - 전이중화 통신
            - 전이중화(full duplex) 통신은 양쪽 장치가 동시에 송수신할 수 있는 방식
          - 유선 LAN 케이블
            - 트위스트 페어 케이블
              - 여덟게의 구리선을 꼬아 만든 하나의 케이블, 우리가 많이 볼 수 있는 케이블은 UTP 케이블로 흔히 LAN 케이블이라고 함
            - 광섬유 케이블
              - 광섬유로 만든 케이블, 레이저를 이용해서 통신하기 떄문에 구리선과는 비교가 안될 정도로 장거리 및 고속 통신이 가능.
          - 무선 LAN(IEEE802.11)
            - 송신과 수신이 같은 채널을 사용하기 떄문에 반이중화 통신을 사용함
            - 반이중화 통신
              - 양쪽 장치는 서로 통신할 수 있지만, 동시에는 통신할 수 없다. 한번에 한 방향만 통신할 수 있다.

728x90

댓글