Temp

20210217, Netwhat 단계별로 밟아가기 (TCP, UDP ~ IP Routing)

ezn 2021. 2. 17. 00:42

TCP와 UDP의 차이

전송계층, TCP/IP, Transmission Control Protocol, User Datagram Protocol

TCP: 신뢰성, HTTP, SMTP, FTP, Unicast

UDP: 간단한(짧은) 데이터, 빠른 속도, DNS, DHCP, Broadcast, Multicast

TCP UDP
Connection-oriented protocol(연결지향형 프로토콜) Connection-less protocol(비 연결지향형 프로토콜)
Connection by byte stream Connection by message stream
Congestion / Flow control(혼잡제어, 흐름제어) NO Congestion / Flow control(혼잡제어와 흐름제어 지원 X)
Ordered, Lower speed(순서 보장, 상대적으로 느림) Not ordered, Higher speed(순서 보장되지 않음, 상대적으로 빠름)
Reliable data transmission(신뢰성 있는 데이터 전송 - 안정적) Unreliable data transmission(데이터 전송 보장 X)
TCP packet : Segment UDP packet : Datagram
HTTP, Email, File transfer DNS, Broadcasting

TCP

신뢰성, 세그먼트, 안정적, 순서, 에러없이, 연결형, 3-way handshaking 연결, 4-way handshaking 연결해제, Flow control, 흐름제어, 속도조절, 오버플로우 방지, window size, Congestion control, 혼잡제어, Reliable transmission, Dupack-based retransmission, Timeout-based retransmission, 전이중, Full-Duplex, 양방향, 점대점, Point to Point, 2개의 종단점 -> 멀티캐스팅 브로드캐스팅 지원하지 않음

TCP Header

  • Source Port, Destination Port, Sequence Number(순서), ACK Number(응답), Data Offset, Reserved, Flag Bit(제어비트), Window, Checksum, Urgent Pointer
ACK Number

TCP 연결 및 해제 과정

  • TCP Connection (3-way handshake)
  • TCP Disconnection (4-way handshake)
UDP Header
  • Source Port, Destination Port, Data length, Checksum

PDU

Protocol Data Unit, Layer, Header

Segment(Transport): data + application 발신지 포트, application 목적지 포트, 순서 번호, 오류 검출 코드(체크섬, 프레임 체크 시퀀스)
Packet(Network): segment + 발신 컴퓨터 IP, 수신 컴퓨터 IP, 서비스 요청
SDU(Service Data Unit): 상하향 통신 레이어 간 전달되는 실제 정보
PDU = PCI(프로토콜 통신 유닛의 줄인말로 쉽게 말하면 헤더 정보) + SDU

DHCP, DNS Protocol

DHCP(Dynamic Host Configuration Protocol) - 동적 호스트 설정 프로토콜: IP address, SubnetMask, default gateway IP, DNS server IP address 를 자동으로 일정 시간 할당해주는 인터넷 프로토콜, 임대(Lease)개념, IP Lease Time, IP address Renewal, IP address Release -> 유동 IP 할당

  • DHCP 서버: 인터넷을 제공해주는 곳의 서버에서 실행되는 프로그램

  • DHCP 클라이언트

  • DHCP 임대절차: DHCP Discover, DHCP Offer, DHCP Request, DHCP Ack

DNS(Domain Name Server), Name Server

  • DNS 절차

IP Routing 동작 과정

분배, 중계, IP네트워크, 서브넷 관리, 라우터, 라우팅, 전송 경로 선택(결정)

랜테이블, 네트워크테이블, 라우팅테이블 - 연결된 모든 장치의 주소를 인식, 패킷의 전송경로 결정

K-MOOC 인공지능을 위한 알고리즘과 자료구조: 이론, 코딩, 그리고 컴퓨팅 사고

  • 1-1. 자료구조/알고리즘의 정의와 중요성 (18:53)

    • 알고리즘이 옳다 == 1.모든 가능한 인풋 인스턴스에 대해서 옳은 값을 출력 해야한다.. 2.이 알고리즘이 반드시 종료되어야 한다.
    • 알고리즘 != 프로그램
    • computational thinking
  • 1-2. 강좌의 목표와 실습 환경(24:58)

    • Asymptotic algorithm analysis
  • 2-1. 배열과 리스트(21:09)

    • array
    • linked list
  • 2-2. 스택과 큐(13:31)

    • stack, LIFO, Top, Push, Pop - 괄호 매칭(balanced or unbalanced)문제
    • queue, FIFO, Front(head), Rear(back, tail), Enqueue, Dequeue, Liner Queue, Circular Queue
  • 3-1. 트리 자료구조(14:01)

    • 노드, 계층, root, children, parent -Directory structure, degree, sibling, leaf, internal, Unordered & Ordered, Paths, path length, Depth, Height, Ancestor, Descendant, linked list로 구현
  • 3-2. 그래프 자료구조(23:22)

    • Objects(vertices), Relationship(arcs, links), Undirected Graphs, Directed Graphs, edge, Degree, Sub-Graphs, vertex, Paths, path length, trivial path, simple path, simple cycle, Connectedness, connected graph, unconnected graph, Weighted graphs, path length of weighted graph, shortest path, trees < graphs, Forests, Directed Graphs, In and Out Degrees, Sources and Sinks, strongly connected, weakly connected, Directed Acyclic Graphs(DAGs)
    • Binary-relation list
    • adjacency matrix
    • adjacency list

학습 내용에 대한 개인적인 총평

-

다음 학습 계획

  • Network 보충
  • K-MOOC 알고리즘 강의 4강부터