λ€μ κ·Έλ¦Όμ μμ μ§ν μ΄λ€ ꡬ쑰λ₯Ό μ°ΎμμΌ νλ€. κ·Έλ¦Όμ 보면 κ° μ’ λ¨μ ν°μΌν κΈ°λ₯μ΄ μμμ μ μ μλ€. μ΄λ―Έ ν°μΌμ κ°μ§ μΉκ°μ μν μνλ¬Ό κΈ°λ₯λ μκ³ , μ§μ κ²μ¬ν μΉκ°μ μν νμΉκ΅¬ κΈ°λ₯λ μλ€.κ° κΈ°λ₯λ€μ΄ μν λ°©μμΌλ‘ μ΄λ€ μν μ μννκ³ μλ κ²μ λ³Ό μ μλ€.
κ³μΈ΅ ꡬ쑰λ ν¬κ³ 볡μ‘ν μμ€ν μ μ μ μλ νΉμ λΆλΆμ λ Όμν μ μκ² ν΄μ€λ€. μ΄λ¬ν λ¨μνλ λ§€μ° μ€μνλ€. μμ€ν μ΄ κ³μΈ΅ ꡬ쑰λ₯Ό κ°μ§ λ, κ·Έ κ³μΈ΅μ΄ μ 곡νλ μλΉμ€μ ꡬνμ λ³κ²½νλ κ²λ λ§€μ° μ½λ€. κ·Έλ¦¬κ³ μ΄λ€ ν κ³μΈ΅μ ꡬνμ΄ λ³νλλΌλ μμ€ν μ λλ¨Έμ§ λΆλΆμ λ³νμ§ μλλ€. κ³μν΄μ κ°±μ λλ 볡μ‘νκ³ μ»€λ€λ μμ€ν μ λν΄, μμ€ν μ λ€λ₯Έ μμμ μν₯μ μ£Όμ§ μκ³ μλΉμ€ ꡬνμ λ³νμν€λ λ₯λ ₯μ κ³μΈ΅νμ λ λ€λ₯Έ μ€μν μ΄μ μ΄ λλ€.
λ€νΈμν¬ μ€κ³μλ νλ‘ν μ½μ κ³μΈ΅ (Layer)μΌλ‘ μ‘°μ§νλ€. κ·Έλ¦Όμμ κ°κ°μ κΈ°λ₯μ΄ ν κ³μΈ΅μ μνλ κ²μ²λΌ κ° νλ‘ν μ½μ ν κ³μΈ΅μ μνλ€. μ°λ¦¬λ ν κ³μΈ΅μ΄ μμ κ³μΈ΅μ μ 곡νλ μλΉμ€μ κ΄μ¬μ κ°κ³ μ΄κ²μ κ³μΈ΅μ μλΉμ€ λͺ¨λΈ (Service Model)μ΄λΌκ³ νλ€.
νλ‘ν μ½ κ³μΈ΅νλ κ°λ κ³Ό ꡬ쑰 μΈ‘λ©΄μμ μ΄μ μ΄ μλ€. λͺ¨λνλ μμ€ν ꡬμ±μμμ κ°±μ μ λ μ½κ² ν΄μ€λ€. κ·Έλ¬λ κ³μΈ΅νμ μ μ¬λ κ²°μ μ ν κ³μΈ΅μ κΈ°λ₯μ΄ νμ κ³μΈ΅κ³Ό κΈ°λ₯μ μΌλ‘ μ€λ³΅λλ€λ κ²μ΄λ€. μλ₯Ό λ€λ©΄ λ§μ νλ‘ν μ½ μ€νμ΄ λ§ν¬μ μ’ λ¨ μμ€ν λ κ³³ λͺ¨λμμ μ€λ₯ 볡ꡬ κΈ°λ₯μ μ 곡νλ€λ κ²μ΄λ€.
μ ν리μΌμ΄μ κ³μΈ΅ (Application layer)
HTTP, SMTP, FTP κ°μ λ§μ νλ‘ν μ½μ ν¬ν¨νλ€. μ¬λμκ² μΉμν web addressλ₯Ό 32 λΉνΈ λ€νΈμν¬ μ£Όμλ‘ λ³ννλ λ€νΈμν¬ κΈ°λ₯μ λ³Ό κ²μ΄λ€. μ΄κ²μ μ ν리μΌμ΄μ κ³μΈ΅μμ DNS κ° λλλ€. μ ν리μΌμ΄μ κ³μΈ΅ νλ‘ν μ½μ μ¬λ¬ μ’ λ¨ μμ€ν μ λΆμ°λμ΄ μμ΄μ, ν μ’ λ¨ μμ€ν μ μλ μ ν릴μΌμ΄μ μ΄ λ€λ₯Έ μ’ λ¨ μμ€ν μ μλ μ ν리μΌμ΄μ κ³Ό μ 보 ν¨ν·μ κ΅ννλ λ° μ΄ νλ‘ν μ½μ μ¬μ©νλ€. μ΄ μ 보 ν¨ν·μ λ©μμ§ (Message) λΌκ³ λΆλ₯Έλ€.
νΈλμ€ν¬νΈ κ³μΈ΅ (Transport Layer)
ν΄λΌμ΄μΈνΈμ μλ² κ°μ μ ν리μΌμ΄μ κ³μΈ΅ λ©μμ§λ₯Ό μ μ‘νλ μλΉμ€λ₯Ό μ 곡νλ€. TCP, UDPλΌλ Transport νλ‘ν μ½μ΄ μμΌλ©° μ΄λ€μ μ ν리μΌμ΄μ κ³μΈ΅ λ©μμ§λ₯Ό μ λ¬νλ€. TCPλ μ°κ²°μ§ν₯ν μλΉμ€λ₯ΌγΉ μ 곡νκ³ λ©μμ§ μ λ¬ λ³΄μ₯κ³Ό νλ¦μ μ΄λ₯Ό ν¬ν¨νλ€. λν TCPλ κΈ΄ λ©μμ§λ₯Ό 짧μ λ©μμ§λ‘ λλκ³ , λ€νΈμν¬κ° νΌμ‘ν λ μΆλ°μ§μ μ μ‘μλλ₯Ό μ€μ΄λλ‘ νλ€. UDPλ λΉμ°κ²¨λ €ν μλΉμ€λ₯Ό μ 곡νλ€. Transport Layerλ₯Ό μΈκ·Έλ¨ΌνΈ (Segment)λΌκ³ νλ€.
λ€νΈμν¬ κ³μΈ΅ (Network Layer)
ν νΈμ€νΈμμ λ€λ₯Έ νΈμ€νΈλ‘ λ°μ΄ν°κ·Έλ¨(Datagram)μ λΌμ°ν νλ μ± μμ μ§λ€. μΆλ°μ§ νΈμ€νΈμμ μΈν°λ· νΈλμ€ν¬νΈ layer (TCP, UDP)λ Transport κ²μΈ΅ Segmentμ λͺ©μ μ§ μ£Όμλ₯Ό λ€νΈμν¬ κ³μΈ΅μΌλ‘ μ λ¬νλ€. κ·Έ λ€μ λ€νΈμν¬ κ³μΈ΅μ λͺ©μ μ§ νΈμ€νΈμ΄ νΈλμ€ν¬νΈ κ³μΈ΅μΌλ‘ μΈκ·Έλ¨ΌνΈλ₯Ό μ΄λ°νλ μλΉμ€λ₯Ό μ 곡νλ€. IP νλ‘ν μ½μ κ°μ§κ³ μλ€. μ΄κ²μ μνν΄μΌλ§ μΆλ°μ§μ λͺ©μ μ§ μ¬μ΄μμ λ°μ΄ν°κ·Έλ¨μ΄ μ΄λνλ κ²½λ‘λ₯Ό κ²°μ νλ λΌμ°ν νλ‘ν μ½μ ν¬ν¨νλ€.
λ§ν¬ κ³μΈ΅ (Link Layer)
λ€νΈμν¬ κ³μΈ΅μ μΆλ°μ§μ λͺ©μ μ§ κ° μΌλ ¨μ ν¨ν· μ€μμΉλ₯Ό ν΅ν΄ λ°μ΄ν°κ·Έλ¨μ λΌμ°νΈ νλ€. κ²½λ‘μμ ν λ Έλμμ λ€λ₯Έ λ Έλλ‘ ν¨ν·μ μ΄λνκΈ° μν΄, λ€νΈμν¬ κ³μΈ΅μ λ§ν¬ κ³μΈ΅ μλΉμ€μ μμ‘΄ν΄μΌ νλ€. νΉν, κ° λ Έλμμ λ€νΈμν¬ κ³μΈ΅μ λ°μ΄ν°κ·Έλ¨μ μλ λ§ν¬ κ³μΈ΅μΌλ‘ 보λ΄κ³ , λ§ν¬ κ³μΈ΅μ κ·Έ λ°μ΄ν° κ·Έλ¨(Datagram) μ κ²½λ‘μμ λ€μ λ Έλμ μ λ¬νλ€.
λ§ν¬ κ³μΈ΅ ν¨ν·μ νλ μ(Frame)μ΄λΌκ³ λΆλ₯Έλ€.
물리 κ³μΈ΅ (Physical Layer)
λ§ν¬ κ³μΈ΅μ κΈ°λ₯μ΄ μ 체 νλ μμ ν λ€νΈμν¬ μμμμ μ΄μ λ€νΈμν¬ μμλ‘ μ΄λνλ κ²μ΄λΌλ©΄, 물리 κ³μΈ΅ (Physical Layer)μ κΈ°λ₯μ νλ μ λ΄λΆμ κ° λΉνΈλ₯Ό ν λ Έλμμ λ€μ λ Έλλ‘ μ΄λνλ κ²μ΄λ€.
1970λ λ νλ°μ ISOλ μ»΄ν¨ν° λ€νΈμν¬κ° 7κ³μΈ΅μΌλ‘ ꡬμ±λμ΄μΌ νλ€λ μ μμ νλ€. μ΄λ₯Ό OSI (Open System Interconnection) λΌκ³ λΆλ₯Έλ€.
μ’ λ¨ μμ€ν κ³Ό λΉμ€νκ² λΌμ°ν°μ λ§ν¬ κ³μΈ΅ μ€μμΉλ λ€νΈμνΉ νλμ¨μ΄μ μννΈμ¨μ΄λ₯Ό κ³μΈ΅μΌλ‘ ꡬμ±νλ€. μΌλ°μ μΌλ‘ μ΄λ€μ νμ κ³μΈ΅μ ꡬννλ€. κ·Έλ¦Όμ²λΌ μ€μμΉλ 1κ³Ό 2 κ³μΈ΅μ ꡬννκ³ λΌμ°ν°λ 1~3 κ³μΈ΅μ ꡬννλ€. νΈμ€νΈλ λ€μ― κ³μΈ΅ λͺ¨λλ₯Ό ꡬννλ€λ μ μ μ£Όλͺ©νμ. μ΄κ²μ μΈν°λ· κ΅¬μ‘°κ° λ€νΈμν¬μ 'κ°μ₯μ리'μμ κ·Έ 볡μ‘μ±μ μ μ§νλ€λ κ΄μ κ³Ό μΌμΉνλ€.
μ‘μ νΈμ€νΈμμ μ ν리μΌμ΄μ κ³μΈ΅ λ©μμ§ (M) λ νΈλμ€ν¬νΈ κ³μΈ΅ (Transport Layer)μΌλ‘ 보λΈλ€. νΈλμ€ν¬νΈ κ³μΈ΅μ λ©μμ§λ₯Ό μμ νλ μΈ‘μ νΈλμ€ν¬νΈ κ³μΈ΅μμ μ¬μ©λ μΆκ° μ 보 (Transport Layer Header)λΌκ³ λΆλ₯Έλ€. μ ν리μΌμ΄μ κ³μΈ΅ λ©μμ§μ νΈλμ€ν¬νΈ κ³μΈ΅ ν€λ μ 보λ λͺ¨λ νΈλμ€ν¬νΈ κ³μΈ΅ Segmentλ₯Ό ꡬμ±νλ€. νΈλμ€ν¬νΈ κ³μΈ΅ μΈκ·Έλ¨ΌνΈλ μ ν리μΌμ΄μ κ³μΈ΅ λ©μμ§λ₯Ό μΊ‘μν νλ€.
νΈλμ€ν¬νΈ κ³μΈ΅μ μΈκ·Έλ¨ΌνΈλ₯Ό λ€νΈμν¬ κ³μΈ΅μΌλ‘ 보λ΄λ©° λ€νΈμν¬ κ³μΈ΅μ μΆλ°μ§μ λͺ©μ μ§ μ’ λ¨ μμ€ν μ£Όμμ λμΌν ν€λ μ 보 (Hn) λ₯Ό μΆκ°νμ¬ λ€νΈμν¬ κ³μΈ΅ λ°μ΄ν°κ·ΈλΌ (Datagram)μ λ§λ λ€. μ΄ λ°μ΄ν°κ·Έλ¨μ λ§ν¬ κ³μΈ΅μΌλ‘ μ λ¬λκ³ λ§ν¬ κ³μΈ΅λ μμ μ ν€λ μ 보λ₯Ό μΆκ°νκ³ λ§ν¬ κ³μΈ΅ νλ μμ λ§λ λ€.
μ¬κΈ°λ‘λΆν° μ°λ¦¬λ κ° κ³μΈ΅μμ ν¨ν·μ ν€λ νλμ νμ΄λ‘λ νλ (Payload Field)λΌλ λ κ°μ§ ννμ νλλ₯Ό κ°λλ€λ κ²μ μ μ μλ€. νμ΄λ‘λλ μΌλ°μ μΌλ‘ κ·Έ κ³μΈ΅ μμλ‘λΆν°μ ν¨ν·μ΄λ€.
μ»΄ν¨ν° 보μ λΆμΌλ λμ μΉκ΅¬λ€μ΄ μ΄λ»κ² μ»΄ν¨ν° λ€νΈμν¬λ₯Ό 곡격ν μ μλ κ°μ 곧 μ»΄ν¨ν° λ€νΈμνΉ μ λ¬Έκ°κ° λ μ°λ¦¬κ° μ΄λ»κ² κ·Έλ¬ν 곡격μΌλ‘λΆν° λ€νΈμν¬λ₯Ό λ°©μ΄ν μ μλ κ°, λ λμκ° κ·Έλ° κ³΅κ²©μ μν₯μ λ°μ§ μλ μλ‘μ΄ κ΅¬μ‘°λ₯Ό μ€κ³νλ κ²μ κ΄ν κ²μ΄λ€.
μΈν°λ·μμ λ°μ΄ν°λ₯Ό μ‘/μμ νκΈ°λ₯Ό μνμ¬ μ₯μΉλ₯Ό μΈν°λ·μ μ°κ²°νλ€. κ·Έλ¬λ λΆννκ²λ μ΄λ¬ν μ’μ κ²κ³Ό ν¨κ» ν΄λ‘μ΄ κ²λ μ λ¬λλ λ° μ΄λ€μ MalwareλΌκ³ λΆλ₯Έλ€. μ΄λ€μ μ₯μΉμ λ€μ΄κ°λ©΄ μ¬λ¬ κ°μ§ μ¬μ ν μΌμ ν μ μλ€. μ¬μ μΈ μ 보λ₯Ό λͺ¨μΌλ μ€νμ΄μ¨μ΄λ₯Ό μ€μΉνμ¬ μ΄λ€ μ 보λ₯Ό λͺ¨μ λμ μΉκ΅¬λ€μκ² λ€μ 보λΈλ€.
λ°μ΄λ¬μ€κ° μ¬μ©μμ μ₯μΉμ μν₯μ μ£ΌκΈ° μν΄μλ μ¬μ©μμ μνΈ μμ©μ΄ νμν Malwareμ΄λ€. μ νμ μΌλ‘ μ μ λ©μΌ λ°μ΄λ¬μ€κ° μκΈ° 볡μ λ₯Ό ν΅ν΄ 맬μ¨μ΄λ₯Ό μννλ€. μ (Worm) μ μ¬μ©μμ μ§μ μ μΈ μνΈμμ© μμ΄ μ₯μΉμ μΉ¨ν¬νλ 맬μ¨μ΄μ΄λ€.
보μ μνμ λ λ€λ₯Έ λΆλ₯λ DoS 곡격μΌλ‘ μλ €μ Έ μλ€. μ΄λ¦μ΄ μ μνλ κ²μ²λΌ DoS 곡격μ λ€νΈμν¬, νΈμ€νΈ λ± λ€λ₯Έ μμλ€μ μ μμ μΈ μ¬μ©μλ€μ΄ μ¬μ©ν μ μκ² νλ κ²μ΄λ€.
무μ μ μ‘μ₯μΉμ κ·Όμ²μ μλμ μ΄ γ΄μμ μλ₯Ό μμΉμν΄μΌλ‘μ¨ κ·Έ μμ μλ μ μ‘λκ³ μλ λͺ¨λ ν¨ν·μ μ¬λ³Έμ μ»μ μ μλ€. μ§λκ°λ λͺ¨λ ν¨ν·μ μ¬λ³Έμ κΈ°λ‘νλ μλμ μΈ μμ μλ₯Ό ν¨ν€ μ€λνΌ (Packet Sniffer) λΌκ³ νλ€.
κ±°μ§μ μΆλ°μ§ μ£Όμλ₯Ό κ°μ§ ν¨ν·μ μΈν°λ·μΌλ‘ 보λ΄λ λ₯λ ₯μ IP μ€νΈλμ΄λΌκ³ νλ©°, ν μ¬μ©μκ° λ€λ₯Έ μ¬μ©μμΈ κ²μ²λΌ νλνλ μ¬λ¬κ°μ§ λ°©λ² μ€μ νλμ΄λ€.
λ€νΈμν¬ μ ν리μΌμ΄μ κ°λ°μ μ€μ¬μ λ€λ₯Έ μ’ λ¨ μμ€ν μμ λμνκ³ λ€νΈμν¬λ₯Ό ν΅ν΄ μλ‘ ν΅μ νλ νλ‘κ·Έλ¨μ μμ±νλ κ²μ΄λ€. μλ₯Ό λ€μ΄ μΉ μ ν리μΌμ΄μ μλ μλ‘ ν΅μ νλ Serverμ Client λ‘ κ΅¬λ³λλ λ νλ‘κ·Έλ¨μ΄ μλ€. λ°λΌμ μ°λ¦¬κ° μλ‘μ΄ μ ν리μΌμ΄μ μ κ°λ°ν λλ μ¬λ¬ μ’ λ¨ μμ€ν μμ μ€νλλ μννΈμ¨μ΄λ₯Ό μμ±ν νμκ° μλ€. μ€μν κ²μ μ°λ¦¬κ° λΌμ°ν°λ λ§ν¬ κ³μΈ΅ μ€μμΉμ κ°μ΄ λ€νΈμν¬ μ½μ΄ μ₯λΉμμ μ€νλλ μννΈμ¨μ΄λ₯Ό μμ±ν νμκ° μλ€λ μ μ΄λ€. μ΄μ²λΌ μ’ λ¨ μμ€ν λ©μλ§ μ ν리μΌμ΄μ μννΈμ¨μ΄κ° μ‘΄μ¬νλ€λ κΈ°λ³Έ μ€κ³λ μΈν°λ· μ ν리μΌμ΄μ μ κ΄λνκ³ λΉ λ₯Έ λ°μ μ μλλ ₯μ΄ λμλ€.
μ ν리μΌμ΄μ ꡬ쑰λ μ ν리μΌμ΄μ κ°λ°μμ μν΄ μ€κ³λκ³ μ ν리μΌμ΄μ μ΄ λ€μν μ’ λ¨ μμ€ν μμ μ΄λ»κ² μ‘°μ§λμ΄μΌ νλμ§λ₯Ό μ§μ¬νλ€.
ν΄λΌμ΄μΈνΈ/μλ² κ΅¬μ‘°μμ νμ μΌμ Έ μλ νΈμ€νΈλ₯Ό μλ² (Server)λΌκ³ λΆλ₯΄λλ° μ΄ μλΉμ€λ₯Ό ν΄λΌμ΄μΈνΈ (Client) λΌλ λ€λ₯Έ λ§μ νΈμ€νΈμ μμ²μ λ°λλ€. ν΄λΌμ΄μΈνΈ νΈμ€νΈλ κ°λ νΉμ νμ μΌμ Έ μμ μ μλ€. κ·Έ μλ‘ ν΄λΌμ΄μΈνΈ νΈμ€νΈμμ μ€νλλ λΈλΌμ°μ κ° νμ μΌμ§ μΉ μλ²λ‘ μλΉμ€λ₯Ό μμ²νλ μΉ μ ν리μΌμ΄μ μ΄λ€.
ν΄λΌμ΄μΈνΈ / μλ² κ΅¬μ‘°μμ ν΄λΌμ΄μΈνΈλ μλ‘ μ§μ μ μΌλ‘ ν΅μ νμ§ μλλ€λ κ²μ΄λ€. μλ₯Ό λ€μ΄ μΉ μ ν리μΌμ΄μ μμλ 2κ°μ λΈλΌμ°μ κ° μ§μ μ μΌλ‘ ν΅μ νμ§ μλλ€. Client / Server ꡬ쑰μ λ€λ₯Έ νΉμ§μ μλ²κ° κ³ μ IP μ£ΌμλΌλ μ μλ €μ§ μ£Όμλ₯Ό κ°λλ€λ κ²μ΄λ€. Serverλ νμ λμνλ―λ‘ Clientλ μλ² μ£Όμλ‘ ν¨ν·μ 보λ΄μ νμ μλ²μ μ°κ²°ν μ μλ€.
P2P ꡬ쑰μμλ νμ μΌμ Έ μλ κΈ°λ°κ΅¬μ‘° μλ²μ μ΅μλ‘ μμ‘΄νλ€. (μ ν μμ‘΄νμ§ μμ μλ μλ€) λμ μ μ ν리μΌμ΄μ μ νΌμ΄(Peer) λΌλ κ°νμ μΌλ‘ μ°κ²°λ νΈμ€νΈ μμ΄ μλ‘ μ§μ ν΅μ νλλ‘ νλ€. νΌμ΄ (Peer)λ μλΉμ€ μ 곡μκ° μμ νμ§ μκ³ , μ¬μ©μλ€μ΄ μ μ΄νλ λ°μ€νΈν±κ³Ό λ©ν±μ΄ μμ νλ€. λλΆλΆμ νΌμ΄(Peer)λ€μ κ°μ , λν, μ¬λ¬΄μ€μ μ‘΄μ¬νλ€. νΉμ μλ²λ₯Ό ν΅νμ§ μκ³ νΌμ΄(Peer)κ° ν΅μ νλ―λ‘ μ΄ κ΅¬μ‘°λ₯Ό P2PλΌκ³ νλ€. λνμ μΈ μλ‘ Torrentκ° μλ€.
λν μ£Όλͺ©ν λ§ν νΉμ± μ€μ νλκ° μκ° νμ₯μ± (Self scalability)μ΄λ€. μλ₯Ό λ€μ΄ P2P νμΌ κ³΅μ μ ν리μΌμ΄μ μμ λΉλ‘ κ° νΌμ΄λ€μ΄ νμΌμ μꡬν¨μΌλ‘μ¨ μμ λΆνλ₯Ό λ§λ€μ΄λ΄μ§λ§ κ° νΌμ΄λ€μ λν νμΌμ λ€λ₯Έ νΌμ΄λ€μκ² λΆλ°°ν¨μΌλ‘μ¨ κ·Έ μμ€ν μ μλΉμ€ λ₯λ ₯μ μΆκ°νλ€. κ΅μλκ»μ Torrentλ₯Ό μ¬μ©νλ νΌμ΄λ€μ΄ λ§μ μλ‘ λ°μ΄ν° μ μ‘ μλκ° λΉ λ₯΄λ€κ³ μμλ₯Ό ν΄μ£Όμ ¨λ κ²μΌλ‘ κΈ°μ΅λλ€.
μ ν리μΌμ΄μ μ κ°λ°νκΈ° μ μ μ¬λ¬ μ’ λ¨ μμ€ν μμ μ€ννλ νλ‘κ·Έλ¨μ΄ μλ‘ ν΅μ νλ λ°©λ²μ μ΄ν΄ν΄μΌ νλ€. OS μ©μ΄μμ μ€μ ν΅μ νλ κ²μ νλ‘κ·Έλ¨μ΄ μλλΌ νλ‘μΈμ€(Process)μ΄λ€. νλ‘μΈμ€λ μ’ λ¨ μμ€ν μμ μ€νλλ νλ‘κ·Έλ¨μ΄λ€. 2κ°μ λ€λ₯Έ μ’ λ¨ μμ€ν μμ νλ‘μΈμ€λ μ»΄ν¨ν° λ€νΈμν¬λ₯Ό ν΅ν λ©μμ§ (Message) κ΅νμΌλ‘ μλ‘ ν΅μ νλ€. μ‘μ νλ‘μΈμ€λ λ©μμ§λ₯Ό λ§λ€μ΄μ λ€νΈμν¬λ‘ 보λΈλ€. μμ νλ‘μΈμ€λ λ©μμ§λ₯Ό λ°κ³ μμΌλ‘ λ©μμ§λ₯Ό 보λμΌλ‘μ¨ μλ΅νλ€.
Client and Server Process
P2P νμΌ κ³΅μ μμ€ν μμλ ν νΌμ΄μ νλ‘μΈμ€μμ λ€λ₯Έ νΌμ΄μ νλ‘μΈμ€λ‘ νμΌμ μ μ‘νλ€. ν΅μ νλ νλ‘μΈμ€ κ° μμ λν΄ μΌλ°μ μΌλ‘ Clientμ νλ‘μΈμ€μ Serverμ νλ‘μΈμ€ μ€ νλλ‘ μ΄λ¦ μ§λλ€. P2P νμΌ κ³΅μ μ κ°μ μ ν리μΌμ΄μ μμ νλ‘μΈμ€ (Process) κ° ν΄λΌμ΄μΈνΈμ μλ² λ λ€ κ°λ₯ν¨μ μ μ μλ€. μ΄λ νλ‘μΈμ€κ° νμΌμ μ¬λ¦¬κ³ λν λ΄λ € λ°μ μ μλ€λ κ²μ΄λ€.
λλΆλΆμ μ ν리μΌμ΄μ μ λ νλ‘μΈμ€κ° λ©μμ§λ₯Ό μλ‘μκ² λ³΄λ΄λ ν΅μ νλ‘μΈμ€ μμλ‘ κ΅¬μ±λλ€. νλμ νλ‘μΈμ€λ‘λΆν° λ€λ₯Έ νλ‘μΈμ€λ‘ 보λ΄λ λ©μμ§λ λ€νΈμν¬λ₯Ό ν΅ν΄ μμ§μΈλ€. νλ‘μΈμ€λ μμΌ (Socket) μ ν΅ν΄ λ€νΈμν¬λ‘ λ©μμ§λ₯Ό 보λ΄κ³ λ°λλ€. μμ κ·Έλ¦Όμμ νμ μ μ‘ νλ‘ν μ½μ΄ μΈν°λ·μ TCP νλ‘ν μ½μ΄λΌκ³ κ°μ νλ€. μμΌμ νΈμ€νΈμ μ ν리μΌμ΄μ κ³μΈ΅κ³Ό νΈλμ€ν¬νΈ κ³μΈ΅ κ°μ μΈν°νμ΄μ€λ€. λν μμΌμ λ€νΈμν¬ μ ν리μΌμ΄μ μ΄ μΈν°λ·μ λ§λ νλ‘κ·Έλλ° μΈν°νμ΄μ€μ΄λ―λ‘ μ ν리μΌμ΄μ κ³Ό λ€νΈμν¬ μ¬μ΄μ APIλΌκ³ λ νλ€.
μ ν리μΌμ΄μ κ°λ°μλ μμΌ (Socket)μ μ ν리μΌμ΄μ κ³μΈ΅μ λν λͺ¨λ ν΅μ κΆμ κ°μ§λ§ μμΌμ νΈλμ€ν¬νΈ κ³μΈ΅μ λν ν΅μ κΆμ κ±°μ κ°μ§ λͺ»νλ€.