TCP / UDP
TCP (Transmission Control Protocol)
λ°μ΄ν°κ° λ°λμ μ λ¬λλ κ²μ 보μ₯νλ νλ‘ν μ½μ λλ€.
μ°κ²°μ§ν₯ (Connection-oriented) μΌλ‘ ν΅μ μ νκΈ° μ μ°κ²°μ΄ μ΄λ£¨μ΄μ ΈμΌ ν©λλ€.
λμ μ λ’°μ± (Reliability) κ³Ό μμ (In-order delivery) λ₯Ό 보μ₯ν©λλ€.
νλ¦ μ μ΄(Flow control) λ₯Ό ν΅ν΄ μ‘μ μμ λ°μ΄ν° μμ μ‘°μ ν©λλ€.
νΌμ‘ μ μ΄(Congestion control) λ₯Ό ν΅ν΄ λ€νΈμν¬ μν©μ κ°μ§νκ³ μ‘μ μμ λ°μ΄ν° μμ μ‘°μ ν©λλ€.
μλ¬ κ°μ§(Error detection) λ₯Ό ν΅ν΄ μλͺ» μ μ‘λμμ κ²½μ° μ¬μ μ‘ν©λλ€.
μ μ΄μ€(Full duplex) λ°©μ μΌλ‘ λ νΈμ€νΈ λͺ¨λ μ‘μ μμ μμ μκ° λ μ μμ΅λλ€.
λ°μ΄νΈ μ€νΈλ¦Ό(Byte stream) μ μ¬μ©νμ¬ λ°μ΄ν°λ₯Ό μ°μμ μΈ λ°μ΄νΈλ‘ κ°μ£Όνκ³ , μΈκ·Έλ¨ΌνΈ(Segment) λΌλ λ¨μμ ν¨ν·μΌλ‘ μͺΌκ°μ 보λ λλ€.
HTTP, FTP, SMTP, TELNET λ±μμ μ¬μ©λ©λλ€.
UDP (User Datagram Protocol)
TCPμ λ¬λ¦¬ λ°μ΄ν°μ μ λ’°μ±μ 보μ₯νμ§ μλ νλ‘ν μ½μ λλ€.
λΉμ°κ²°ν (Connection-less) μΌλ‘ μ°κ²° μ€μ , ν΄μ κ³Όμ μ΄ μμ΅λλ€.
μ λ’°μ±μ΄ μκ³ μ μ‘λλ λ°μ΄ν°μ μμλ₯Ό 보μ₯νμ§ μμ΅λλ€.
νλ¦ μ μ΄, νΌμ‘ μ μ΄κ° μμ΅λλ€.
μλ¬ κ°μ§λ ν€λμ 체ν¬μ¬ (Checksum) μ μμ‘΄ν©λλ€.
ν¨ν·μ λ¨μκ° λ°μ΄ν°κ·Έλ¨ (Datagram) μΌλ‘ κ²½κ³κ° λΆλͺ νμ¬ μμ μλ μ‘μ μκ° λ³΄λΈ κ·Έλλ‘μ ν¬κΈ°λ‘ λ°μ΅λλ€.
μλ²μ ν΄λΌμ΄μΈνΈλ μ λμΊμ€νΈ (1:1), λΈλ‘λμΊμ€νΈ (1:N), λ©ν°μΊμ€νΈ (1:M)κ° κ°λ₯ν©λλ€. (Nμ μ 체, Mμ μΌλΆ)
TCPμ λΉν΄μ νλ μμ λ€μ΄ κ΅μ₯ν μ κΈ° λλ¬Έμ μλκ° λΉ ν‘λλ€.
DNS, DHCP, λΉλμ€/μ€λμ€ μ€νΈλ¦¬λ° λ±μ μ¬μ©λ©λλ€.
3 Way-Handshake & 4 Way-Handshake

3 Way-Handshake
ν΄λΌμ΄μΈνΈλ μλ²μ μ μμ μμ²νλ SYN μ 보λ λλ€. μ΄λ ν΄λΌμ΄μΈνΈλ SYN μ 보λ΄κ³ SYN/ACK μλ΅μ κΈ°λ€λ¦¬λ SYN_SENT μνκ° λ©λλ€.
μλ²λ SYN μμ²μ λ°κ³ ν΄λΌμ΄μΈνΈμκ² μμ²μ μλ½νλ€λ ACK μ SYN μ λ°μ‘νκ³ ν΄λΌμ΄μΈνΈκ° λ€μ ACK μΌλ‘ μλ΅νκΈ°λ₯Ό κΈ°λ€λ¦½λλ€. μ΄λ μλ²λ SYN_RECEIVED μνκ° λ©λλ€.
ν΄λΌμ΄μΈνΈλ μλ²μκ² ACK μ 보λ΄κ³ μ΄νλ‘λΆν°λ μ°κ²°μ΄ μ΄λ£¨μ΄μ§κ³ λ°μ΄ν°λ₯Ό μ μ‘ν©λλ€. μ΄λμ μνκ° ESTABLISHED μ λλ€.
4 Way-Handshake
ν΄λΌμ΄μΈνΈκ° μ°κ²°μ μ’ λ£νκ² λ€λ FIN μ μ μ‘ν©λλ€.
μλ²λ μΌλ¨ νμΈνλ€λ ACK μ 보λ΄κ³ , μμ μ ν΅μ μ΄ λλ λκΉμ§ κΈ°λ€λ¦¬λλ° μ΄ μνκ° TIME_WAIT μ λλ€.
μλ²κ° ν΅μ μ΄ λλ¬μΌλ©΄ μ°κ²°μ΄ μ’ λ£λμλ€κ³ ν΄λΌμ΄μΈνΈμκ² FIN μ μ μ‘ν©λλ€.
ν΄λΌμ΄μΈνΈλ νμΈνλ€λ ACK μ μ μ‘ν©λλ€.
Last updated
Was this helpful?