βοΈUDP
- κ°λ
μ λ’°μ±λ³΄λ€ μλμ ν¨μ¨μ±μ μ€μμν λ μ¬μ©νλ μ μ‘ κ³μΈ΅ νλ‘ν μ½
- νΉμ§
1. TCPμ λ¬λ¦¬ UDPλ μ°κ²° μ§ν₯νμ΄ μλλλ€.
κ·Έλμ, 3 way handshake μ 4 way handshake κ° μκΈ° λλ¬Έμ μλκ° λΉ λ¦ λλ€.
2. 1:N , N:N ν΅μ μ΄ κ°λ₯ν΄μ DNS νλ‘ν μ½κ³Ό μ€νΈλ¦¬λ° μλΉμ€μ μ ν©ν©λλ€.
3. λ°μ΄ν°μ μ λ’°μ±μ 보μ₯νμ§ μμ΅λλ€.
λ¨μ§ 체ν¬μ¬μ ν΅ν΄ μμ λ ν¨ν·μ μ€λ₯ μ¬λΆ μ λλ§μ μ μ μμ΅λλ€.
- 체ν¬μ¬ ?
UDP λ°μ΄ν°κ·Έλ¨μ 무결μ±μ μν΄ μ¬μ©λλ κ² μ λλ€.
체ν¬μ¬μ μ‘μ ν λ°μ΄ν°κ·Έλ¨μ 16λΉνΈ λ¨μλ‘ λλκ³ , λͺ¨λ λν λ€μ 1μ 보μλ₯Ό μ·¨ν΄μ λ§λ€μ΄ μ§λλ€.
λ§λ€μ΄μ§ κ°μ UDPν€λμ 체ν¬μ¬ νλμ λ£μ΄ μ μ‘ ν©λλ€.
μμ μλ μμ ν λ°μ΄ν°κ·Έλ¨μ λν΄ λμΌν λ°©μμΌλ‘ 체ν¬μ¬μ λ§λ€κ³ ν€λμ 체ν¬μ¬κ³Ό μΌμΉ νλμ§ λΉκ΅ν¨μΌλ‘μ¨ μμ λ λ°μ΄ν°κ·Έλ¨μ μ€λ₯λ₯Ό κ²μΆν μ μμ΅λλ€.
μ΄λ¬ν 체ν¬μ¬ νλλ IPμ£Όμκ° λ¬΄μμ΄λμ λ°λΌ μ νκ³Ό νμλ‘ λλμ΄μ§λλ€.
IPv4 μ£Όμ μ²΄κ³ μμ Source port μ Checksum μ μ νμ΄κ³ , Destinaion port , Length λ νμμ λλ€.
IPv6 μμ Source port λ§ μ νμ΄κ³ , λλ¨Έμ§ νλλ νμμ λλ€.
* IPv4 : 192.168.1.1 μ²λΌ μ (.)μΌλ‘ ꡬλΆλ 4κ°μ 10μ§μλ‘ ννλλ 32λΉνΈ μ£Όμ 체κ³(10μ§μ 1κ°λΉ 8λΉνΈλ‘ νν)μ λλ€.
* IPv6 : 2001:0db8:85a3:0000:0000:8a2e:0370:7334 μ²λΌ μ½λ‘ (:)μΌλ‘ ꡬλΆλ 8κ°μ 16μ§μλ‘ ννλλ 128λΉνΈ μ£Όμ 체κ³(16μ§μ 1κ°λΉ 16λΉνΈλ‘ νν)μ λλ€.
βοΈTCP
- κ°λ
λ°μ΄ν°μ μ λ’°μ±κ³Ό μμλ₯Ό μ€μμν λ μ¬μ©νλ μ μ‘ κ³μΈ΅ νλ‘ν μ½μ λλ€.
- νΉμ§
1. TCPλ μ°κ²° μ§ν₯ν μ λλ€.
ν΅μ νκΈ° μ μ°κ²°μ μ립νλ κ³Όμ μ 3 way handshake, ν΅μ μ λλ΄κ³ μ°κ²°μ μ’ λ£νλ κ³Όμ μ 4 way handshake κ° μμ΅λλ€.
2. λ°μ΄ν°μ μ λ’°μ±μ 보μ₯ν©λλ€.
체ν¬μ¬ νλλ₯Ό μ¬μ©ν΄ λ°μ΄ν°μ 무결μ±μ κ²μ¦ν©λλ€.
λμ ACK λ°©μμΌλ‘ μμ μΈ‘μμ ν¨ν·μ μ λ°μλμ§ νμΈνκ³ , λ§μ½ μ€λ³΅λ 3κ°μ ACK λλ νμμμμ΄ λ°μνλ©΄ λΉ λ₯Έ μ¬μ μ‘μΌλ‘ ν¨ν·μ μ¬μ μ‘ν©λλ€.
3. Sequence Number λ₯Ό μ¬μ©ν΄μ λ°μ΄ν°μ μμλ₯Ό 보μ₯ν©λλ€
4. μμ μΈ‘μ window size λ₯Ό κ°μ§κ³ νλ¦ μ μ΄λ₯Ό ν©λλ€.
5. μ‘μ μΈ‘μ λ€νΈμν¬ νΌμ‘λλ₯Ό μΈ‘μ νμ¬ νΌμ‘ μ μ΄λ₯Ό ν©λλ€.
βοΈTCP - 3 way handshake
3 way handshake λ 3κ°μ ν¨ν·μ μ£Όκ³ λ°μΌλ©° μ¬μ μ°κ²° μ€μ μ μ립νλ 3λ¨κ³ κ³Όμ μ λλ€.
1λ¨κ³ : ν΄λΌμ΄μΈνΈ → μλ² (SYN)
ν΄λΌμ΄μΈνΈλ TCPν€λμ SYN νλκ·Έ λΉνΈλ₯Ό 1λ‘ μ€μ ν©λλ€. 무μμμ sequence λ²νΈ(ex. A)λ₯Ό μΈκ·Έλ¨ΌνΈμ λ£μ΄μ μλ²μκ² λ³΄λ λλ€.
2λ¨κ³ : μλ² → ν΄λΌμ΄μΈνΈ (SYN-ACK)
μλ²λ SYN νλκ·Έμ ACK νλκ·Έμ λΉνΈλ₯Ό 1λ‘ μ€μ ν©λλ€.
Acknowledgement Number νλμλ μμ λ sequence λ²νΈλ³΄λ€ νλ λ ν° κ°(ex. A + 1)μ μ€μ νκ³ ,
sequece number νλμλ 무μμμ λ²νΈ(ex. Z)λ₯Ό λ΄κ³ , ν΄λΉ μΈκ·Έλ¨ΌνΈλ₯Ό ν΄λΌμ΄μΈνΈμκ² μ μ‘ν©λλ€.
3λ¨κ³ : ν΄λΌμ΄μΈνΈ → μλ² (ACK)
λ§μ§λ§μΌλ‘ ν΄λΌμ΄μΈνΈλ ACKλ₯Ό μλ²λ‘ λ€μ 보λ λλ€.
Acknowlegment number λ μλ²κ° λ³΄λΈ sequence number νλ κ°(Z) μ 1μ λν Z + 1 λ‘ μ€μ λ©λλ€.
sequece number νλμλ μλ²κ° λ³΄λΈ Acknowledgement number νλ κ°μ΄μλ A + 1 λ‘ μ€μ ν©λλ€.
μ΄ λ, μ μ‘ν λ°μ΄ν°κ° μμΌλ©΄ μ΄ λ¨κ³μμ λ°μ΄ν°λ₯Ό μ μ‘νκ³ , μλ²λ ν΄λΌμ΄μΈνΈμ ACK λ₯Ό ν΅ν΄ νμ¬ ν΄λΌμ΄μΈνΈκ° alive μμ νμΈν©λλ€.
βοΈTCP - 4 way handshake
4κ°μ ν¨ν·μ μ£Όκ³ λ°μΌλ©° TCP μ°κ²°μ μ’ λ£νλ κ³Όμ μ λλ€.
1λ¨κ³ : ν΄λΌμ΄μΈνΈ → μλ² (FIN)
ν΄λΌμ΄μΈνΈλ μλ²μκ² μ°κ²°μ μ’ λ£νκ² λ€λ FIN νλκ·Έλ₯Ό 1λ‘ μ€μ ν μΈκ·Έλ¨ΌνΈλ₯Ό 보λ λλ€.
2λ¨κ³ : μλ² → ν΄λΌμ΄μΈνΈ (ACK)
μλ²λ ν΄λΌμ΄μΈνΈμκ² FIN μ λν ACK λ₯Ό 보λ λλ€.
ACK λ₯Ό λ°μ ν΄λΌμ΄μΈνΈλ ν¬νΈ μνλ₯Ό FIN_WAIT_2 λ‘ λ°κΎΈκ³ , μλ²μ FIN ν¨ν·μ κΈ°λ€λ¦½λλ€.
3λ¨κ³ : μλ² → ν΄λΌμ΄μΈνΈ (FIN)
μλ²κ° ν΄λΌμ΄μΈνΈμκ² μ°κ²°μ μ’ λ£νκ² λ€λ FIN νλκ·Έ λΉνΈλ₯Ό 1λ‘ μ€μ ν μΈκ·Έλ¨ΌνΈλ₯Ό 보λ λλ€.
4λ¨κ³ : ν΄λΌμ΄μΈνΈ → μλ² (ACK)
ν΄λΌμ΄μΈνΈλ μλ²μ μ’ λ£ μμ²μ μλ΅νμ¬ λ§μ§λ§ ACKλ₯Ό 보λ΄κ³ , λ§μ§λ§ ACKλ₯Ό μμ ν μλ²λ ν¬νΈλ₯Ό λ«μ΅λλ€.
'Network' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
ARQμ TCP μ μ°¨μ΄μ , κ·Έλ¦¬κ³ TCP Reno (1) | 2024.09.05 |
---|---|
μΏ ν€ μΈμ ν ν°μ μ°¨μ΄λ₯Ό μ΄ν΄νκ³ , μΏ ν€ μ¬μ© μμ XSS CSRF μλ°© μμ보기 (0) | 2024.08.29 |
TLS 1.2 Handshake λμ κ³Όμ + HTTPS κ°μ (0) | 2024.08.22 |
HTTP/1.0 β HTTP/1.1 β HTTP/2.0 β HTTP/3.0 λ²μ λ³ μ°¨μ΄λ₯Ό μ΄ν΄νκΈ° (1) | 2024.08.22 |
TCP/IPμ 'ν¨ν· κ΅ν λ°©μ' μ°λ¨Ή νκΈ° (0) | 2024.08.15 |