λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
ComputerScience πŸ“š/μ»΄ν“¨ν„°λ„€νŠΈμ›Œν¬

[λ„€νŠΈμ›Œν¬] 데이터 κ΅ν™˜ 방식 - νŒ¨ν‚· κ΅ν™˜

by μ•ˆμ£Όν˜• 2022. 4. 9.

 

μ„œλ‘ 

λ„€νŠΈμ›Œν¬ μ‘μš©μ—μ„œ 쒅단 μ‹œμŠ€ν…œλ“€μ€ μ„œλ‘œ λ©”μ‹œμ§€λ₯Ό κ΅ν™˜ν•©λ‹ˆλ‹€. λ©”μ‹œμ§€μ—λŠ” JPEG 이미지 ν˜Ήμ€ MP3 μ˜€λ””μ˜€ 파일과 같은 데이터λ₯Ό ν¬ν•¨ν•˜λŠ”λ° 솑신 쒅단 μ‹œμŠ€ν…œμ—μ„œ λͺ©μ μ§€ 쒅단 μ‹œμŠ€ν…œμœΌλ‘œ λ©”μ‹œμ§€λ₯Ό 보내기 μœ„ν•΄, 솑신 μ‹œμŠ€ν…œμ€ κΈ΄ λ©”μ‹œμ§€λ₯Ό νŒ¨ν‚·(packet)이라고 ν•˜λŠ” μž‘μ€ 데이터 λ©μ–΄λ¦¬λ‘œ λΆ„ν• ν•©λ‹ˆλ‹€. 솑신 μΈ‘κ³Ό μˆ˜μ‹  μΈ‘ μ‚¬μ΄μ—μ„œ 각 νŒ¨ν‚·μ€ 톡신 링크와 νŒ¨ν‚· μŠ€μœ„μΉ˜λ₯Ό 거치게 λ©λ‹ˆλ‹€.

링크와 μŠ€μœ„μΉ˜μ˜ λ„€νŠΈμ›Œν¬λ₯Ό 톡해 데이터λ₯Ό μ΄λ™μ‹œν‚€λŠ” λ°©μ‹μ—λŠ” μ•„λž˜μ˜ 두 가지 κΈ°λ³Έ 방식이 μžˆμŠ΅λ‹ˆλ‹€.

  1. νŒ¨ν‚· κ΅ν™˜(packet switching)
  2. νšŒμ„  κ΅ν™˜(circuit switching)

이번 κ²Œμ‹œκΈ€μ—μ„œλŠ” 1. νŒ¨ν‚· κ΅ν™˜ λ„€νŠΈμ›Œν¬μ— λŒ€ν•΄ ν•œλ²ˆ 정리해 λ³΄κ² μŠ΅λ‹ˆλ‹€.

 

νŒ¨ν‚· κ΅ν™˜

- νŒ¨ν‚·μ€ 정보 κΈ°μˆ μ—μ„œ νŒ¨ν‚· λ°©μ‹μ˜ 컴퓨터 λ„€νŠΈμ›Œν¬κ°€ μ „λ‹¬ν•˜λŠ” λ°μ΄ν„°μ˜ ν˜•μ‹ν™”λœ 블둝이닀. νŒ¨ν‚·μ€ μ œμ–΄ 정보와 μ‚¬μš©μž λ°μ΄ν„°λ‘œ 이루어지며, μ΄λŠ” νŽ˜μ΄λ‘œλ“œλΌκ³ λ„ ν•œλ‹€. (μœ„ν‚€λ°±κ³Ό)

νŒ¨ν‚·μ€ 링크의 μ΅œλŒ€ 전솑 속도와 같은 μ†λ„λ‘œ 각각의 톡신 λ§ν¬μƒμ—μ„œ μ „μ†‘λ©λ‹ˆλ‹€. λ”°λΌμ„œ 솑신 쒅단 μ‹œμŠ€ν…œ ν˜Ήμ€ νŒ¨ν‚· μŠ€μœ„μΉ˜κ°€ R bits/sec의 μ†λ„λ‘œ λ§ν¬μƒμ—μ„œ L bits의 νŒ¨ν‚·μ„ μ†‘μ‹ ν•œλ‹€λ©΄, κ·Έ νŒ¨ν‚·μ„ μ „μ†‘ν•˜λŠ” 데 κ±Έλ¦¬λŠ” μ‹œκ°„μ€ L/R μ΄ˆμž…λ‹ˆλ‹€.

1) μ €μž₯ ν›„ 전달

λŒ€λΆ€λΆ„μ˜ νŒ¨ν‚· μŠ€μœ„μΉ˜λŠ” μ €μž₯ ν›„ 전달 전솑(store-and-forward transmission) 방식을 μ΄μš©ν•©λ‹ˆλ‹€. μ €μž₯ ν›„ 전달은 μŠ€μœ„μΉ˜κ°€ 좜λ ₯ 링크둜 νŒ¨ν‚·μ˜ 첫 λΉ„νŠΈλ₯Ό μ „μ†‘ν•˜κΈ° 전에 전체 νŒ¨ν‚·μ„ λ°›μ•„μ•Ό 함을 μ˜λ―Έν•©λ‹ˆλ‹€. μ•„λž˜ 이미지λ₯Ό ν•œλ²ˆ μ‚΄νŽ΄λ΄…μ‹œλ‹€.

μ €μž₯ ν›„ 전달 νŒ¨ν‚· κ΅ν™˜

ν˜„μž¬ 솑신 μ‹œμŠ€ν…œ(source)은 μˆ˜μ‹  μ‹œμŠ€ν…œ(destination)으둜 전솑할 3개의 νŒ¨ν‚·μ„ κ°–κ³  있으며, 각각은 L λΉ„νŠΈλ‘œ κ΅¬μ„±λ©λ‹ˆλ‹€. ν˜„μž¬ 이미 μ΄λ―Έμ§€μ—μ„œλŠ” 솑신 μ‹œμŠ€ν…œμ΄ νŒ¨ν‚· 1의 일뢀뢄을 μ „μ†‘ν•˜μ˜€κ³  λΌμš°ν„°μ— νŒ¨ν‚· 1이 μ „λΆ€ λ„μ°©ν•˜μ§€λŠ” μ•Šμ€ μƒνƒœμž…λ‹ˆλ‹€. λΌμš°ν„°κ°€ μ €μž₯ ν›„ 전달 방식을 μ±„νƒν•˜μ˜€κΈ°μ— λΌμš°ν„°λŠ” μˆ˜μ‹ ν•œ λΉ„νŠΈκ°€ μ „λΆ€ λ„μ°©ν•˜κΈ° μ „κΉŒμ§€λŠ” 전솑할 수 μ—†μŠ΅λ‹ˆλ‹€.

2) νμž‰ 지연과 νŒ¨ν‚· 손싀

각 νŒ¨ν‚· μŠ€μœ„μΉ˜λŠ” μ ‘μ†λ˜λŠ” μ—¬λŸ¬ 개의 링크λ₯Ό κ°–κ³  μžˆμŠ΅λ‹ˆλ‹€. 각 링크에 λŒ€ν•΄ νŒ¨ν‚· μŠ€μœ„μΉ˜λŠ” 좜λ ₯ 버퍼(좜λ ₯ 큐)λ₯Ό κ°–κ³  있으며, κ·Έ 링크둜 μ†‘μ‹ ν•˜λ €κ³  ν•˜λŠ” νŒ¨ν‚·μ„ μ €μž₯ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

  • 좜λ ₯ λ²„νΌλŠ” νŒ¨ν‚· μŠ€μœ„μΉ­μ—μ„œ μ€‘μš”ν•œ 역할을 ν•œλ‹€.
  • λ„μ°©ν•˜λŠ” νŒ¨ν‚·μ΄ ν•œ 링크둜 전솑될 ν•„μš”κ°€ μžˆλŠ”λ° κ·Έ 링크가 λ‹€λ₯Έ νŒ¨ν‚·μ„ μ „μ†‘ν•˜κ³  μžˆλŠ” μƒνƒœλΌλ©΄, λ„μ°©ν•˜λŠ” νŒ¨ν‚·μ€  ν˜„μž¬ μ „μ†‘λ˜κ³  μžˆλŠ” νŒ¨ν‚·μ΄ λ‹€ 전솑될 λ•ŒκΉŒμ§€ 좜λ ₯ λ²„νΌμ—μ„œ λŒ€κΈ°ν•΄μ•Ό ν•œλ‹€.
  • λ”°λΌμ„œ μ €μž₯ ν›„ 전달 μ§€μ—°λΏλ§Œ μ•„λ‹ˆλΌ, νŒ¨ν‚·μ€ 좜λ ₯ λ²„νΌμ—μ„œ νμž‰ 지연(queuing delay)을 κ²ͺ게 λœλ‹€.
  • 버퍼 κ³΅κ°„μ˜ 크기가 μœ ν•œν•˜κΈ° λ•Œλ¬Έμ— λ„μ°©ν•˜λŠ” νŒ¨ν‚·μ€ 버퍼가 전솑을 μœ„ν•΄ λŒ€κΈ° 쀑인 λ‹€λ₯Έ νŒ¨ν‚·λ“€λ‘œ 꽉 μ°¨ μžˆλŠ” 경우λ₯Ό λ‹Ήν•  수 μžˆλ‹€.
  • 이 경우 νŒ¨ν‚· 손싀(packet loss)이 λ°œμƒν•œλ‹€.(λ„μ°©ν•˜λŠ” νŒ¨ν‚· ν˜Ήμ€ 이미 큐에 λŒ€κΈ° 쀑인 νŒ¨ν‚·μ„ 폐기(drop))

νŒ¨ν‚· μŠ€μœ„μΉ­

μœ„ μ΄λ―Έμ§€λŠ” κ°„λ‹¨ν•œ νŒ¨ν‚· κ΅ν™˜ λ„€νŠΈμ›Œν¬λ₯Ό μ„€λͺ…ν•©λ‹ˆλ‹€. 1) μ €μž₯ ν›„ μ „λ‹¬μ—μ„œ 봀던 이미지와 λ§ˆμ°¬κ°€μ§€λ‘œ νŒ¨ν‚·λ“€μ€ 3차원 μ‘°κ°λ“€λ‘œ λ‚˜νƒ€λ‚΄μ–΄μ Έ μžˆμŠ΅λ‹ˆλ‹€. 쑰각의 λ„“μ΄λŠ” νŒ¨ν‚·μ˜ λΉ„νŠΈ 수λ₯Ό λ‚˜νƒ€λ‚΄λŠ”λ° 이 κ·Έλ¦Όμ—μ„œ λͺ¨λ“  νŒ¨ν‚·μ€ 같은 넓이와 같은 길이λ₯Ό κ°–μŠ΅λ‹ˆλ‹€. 

호슀트 A와 호슀트 Bκ°€ 호슀트 E둜 νŒ¨ν‚·μ„ μ „μ†‘ν•œλ‹€κ³  κ°€μ •ν•΄ λ΄…μ‹œλ‹€. 

  • 호슀트 A와 BλŠ” λ¨Όμ € 첫 번째 λΌμš°ν„°λ‘œ 100 Mbps 이더넷 링크λ₯Ό 톡해 νŒ¨ν‚·μ„ μ „μ†‘ν•©λ‹ˆλ‹€.
  • λΌμš°ν„°λŠ” λ‹€μŒμ— 이듀 νŒ¨ν‚·μ„ 15 Mbps의 링크둜 μ „λ‹¬ν•©λ‹ˆλ‹€.
  • λ§Œμ•½ 짧은 κΈ°κ°„ λ™μ•ˆμ— λΌμš°ν„°μ— λ„μ°©ν•˜λŠ” νŒ¨ν‚·μ˜ 전솑속도가 15 Mbpsλ₯Ό μ΄ˆκ³Όν•˜λ©΄ λΌμš°ν„°μ—μ„œ 혼작이 λ°œμƒν•˜κ²Œ 되고 링크둜 μ „μ†‘λ˜κΈ° 전에 링크의 좜λ ₯ 버퍼에 νμž‰λ©λ‹ˆλ‹€.

예λ₯Ό λ“€μ–΄, 호슀트 A와 Bκ°€ 각각 λ™μ‹œμ— μ—°μ†ν•΄μ„œ 5개의 νŒ¨ν‚·μ„ μ†‘μ‹ ν•˜λ©΄, 이듀 νŒ¨ν‚·μ˜ λŒ€λΆ€λΆ„μ€ νμ—μ„œ λŒ€κΈ°ν•˜λŠ” 데 μ‹œκ°„μ„ μ†ŒλΉ„ν•©λ‹ˆλ‹€. μ΄λŸ¬ν•œ νμž‰ 지연에 κ΄€ν•œ 쑰금 더 μƒμ„Έν•œ λ‚΄μš©μ€ μ•„λž˜μ˜ κ²Œμ‹œκΈ€μ—μ„œ λ‹€λ£¨μ—ˆμœΌλ‹ˆ μ°Έκ³ ν•˜μ‹œλ©΄ 쒋을 것 κ°™μŠ΅λ‹ˆλ‹€.

 

[λ„€νŠΈμ›Œν¬] νμž‰ 지연과 νŒ¨ν‚· 손싀

μ„œλ‘  [λ„€νŠΈμ›Œν¬] 데이터 κ΅ν™˜ 방식 - νŒ¨ν‚· κ΅ν™˜ μ„œλ‘  λ„€νŠΈμ›Œν¬ μ‘μš©μ—μ„œ 쒅단 μ‹œμŠ€ν…œλ“€μ€ μ„œλ‘œ λ©”μ‹œμ§€λ₯Ό κ΅ν™˜ν•©λ‹ˆλ‹€. λ©”μ‹œμ§€μ—λŠ” JPEG 이미지 ν˜Ήμ€ MP3 μ˜€λ””μ˜€ 파일과 같은 데이터λ₯Ό ν¬ν•¨ν•˜λŠ”λ° 솑

dkswnkk.tistory.com

 

3) 전달 ν…Œμ΄λΈ”κ³Ό λΌμš°νŒ… ν”„λ‘œν† μ½œ 

μš°λ¦¬λŠ” 이제 λΌμš°ν„°κ°€ μ ‘μ†λœ 톡신 링크 쀑 ν•˜λ‚˜λ‘œ λ„μ°©ν•˜λŠ” νŒ¨ν‚·μ„ λ°›μ•„μ„œ μ ‘μ†λœ 톡신 링크 쀑 λ‹€λ₯Έ 링크둜 κ·Έ νŒ¨ν‚·μ„ μ „λ‹¬ν•œλ‹€λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ—¬κΈ°μ„œ 의문점이 λ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. κ³Όμ—° λΌμš°ν„°λŠ” μ–΄λ–»κ²Œ κ·Έ νŒ¨ν‚·μ„ μ–΄λŠ 링크둜 전달해야 ν•˜λŠ”μ§€λ₯Ό κ²°μ •ν• κΉŒμš”? ν•œλ²ˆ κ°„λž΅ν•˜κ²Œ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€.

μΈν„°λ„·μ—μ„œ λͺ¨λ“  쒅단 μ‹œμŠ€ν…œμ€ IP μ£Όμ†ŒλΌκ³  ν•˜λŠ” μ£Όμ†Œλ₯Ό κ°–μŠ΅λ‹ˆλ‹€. μ†ŒμŠ€(좜발) 쒅단 μ‹œμŠ€ν…œμ΄ νŒ¨ν‚·μ„ λͺ©μ μ§€ 쒅단 μ‹œμŠ€ν…œμœΌλ‘œ λ³΄λ‚΄κ³ μž ν•  λ•Œ, μ†ŒμŠ€λŠ” νŒ¨ν‚·μ˜ 헀더에 λͺ©μ μ§€μ˜ IP μ£Όμ†Œλ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€. 우편 μ£Όμ†Œμ™€ λ§ˆμ°¬κ°€μ§€λ‘œ 이 μ£Όμ†ŒλŠ” 계측적 ꡬ쑰λ₯Ό κ°–μŠ΅λ‹ˆλ‹€. νŒ¨ν‚·μ΄ λ„€νŠΈμ›Œν¬μ˜ ν•œ λΌμš°ν„°μ— λ„μ°©ν•˜λ©΄, λΌμš°ν„°λŠ” νŒ¨ν‚·μ˜ λͺ©μ μ§€ μ£Όμ†Œμ˜ 일뢀λ₯Ό μ‘°μ‚¬ν•˜κ³  κ·Έ νŒ¨ν‚·μ„ 이웃 λΌμš°ν„°λ‘œ μ „λ‹¬ν•©λ‹ˆλ‹€. 보닀 ꡬ체적으둜 각 λΌμš°ν„°λŠ” λͺ©μ μ§€ μ£Όμ†Œλ₯Ό λΌμš°ν„°μ˜ 좜λ ₯ 링크둜 λ§΅ν•‘ν•˜λŠ” 전달 ν…Œμ΄λΈ”(forwarding table)을 κ°–κ³  μžˆμŠ΅λ‹ˆλ‹€.

νŒ¨ν‚·μ΄ λΌμš°ν„°μ— λ„μ°©ν•˜λ©΄, λΌμš°ν„°λŠ” μ˜¬λ°”λ₯Έ 좜λ ₯ 링크λ₯Ό μ°ΎκΈ° μœ„ν•΄ μ£Όμ†Œλ₯Ό μ‘°μ‚¬ν•˜κ³  이 λͺ©μ μ§€ μ£Όμ†Œλ₯Ό μ΄μš©ν•˜μ—¬ 전달 ν…Œμ΄λΈ”μ„ κ²€μƒ‰ν•©λ‹ˆλ‹€. 그런 후에 λΌμš°ν„°λŠ” κ·Έ νŒ¨ν‚·μ„ 좜λ ₯ 링크둜 λ³΄λƒ…λ‹ˆλ‹€.

ν•œλ²ˆ μ œκ°€ μ„œμšΈμ—μ„œ λΆ€μ‚°μœΌλ‘œ 지도λ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šκ³  λ°©ν–₯을 물어보며 κ°€λŠ” 것을 κΈ°μ€€μœΌλ‘œ 예λ₯Ό λ“€μ–΄ λ³΄κ² μŠ΅λ‹ˆλ‹€.

  1. μ €λŠ” μ„œμšΈμ—μ„œ λΆ€μ‚°κ΄‘μ—­μ‹œ μ‚¬ν•˜κ΅¬ λ‚™λ™λŒ€λ‘œ 550번 κΈΈ 37κΉŒμ§€ μžκ°€μš©μœΌλ‘œ μ΄λ™ν•˜λ €κ³  ν•©λ‹ˆλ‹€.
  2. μ €λŠ” λ¨Όμ € μ°¨λ₯Ό λͺ°κ³  이웃 μ£Όμœ μ†Œμ— κ°€μ„œ λͺ©μ μ§€μ— μ–΄λ–»κ²Œ κ°€λŠ”μ§€ λ¬Όμ–΄λ΄…λ‹ˆλ‹€.
  3. μ£Όμœ μ†Œ 직원은 κ·Έ λͺ©μ μ§€μ˜ μ£Όμ†Œμ—μ„œ λΆ€μ‚°κ΄‘μ—­μ‹œλ₯Ό ν™•μΈν•˜κ³  κ²½λΆ€κ³ μ†λ„λ‘œλ₯Ό 타고 μ­‰ 남μͺ½μœΌλ‘œ 가라고 λ§ν•˜κ³  λΆ€μ‚°μ—μ„œ λ‹€μ‹œ 물어보라고 ν•©λ‹ˆλ‹€.
  4. 뢀산에 μžˆλŠ” λ‹€λ₯Έ μ£Όμœ μ†Œ 직원은 μ‚¬ν•˜κ΅¬λ₯Ό ν™•μΈν•˜κ³  λ‹€λŒ€ν¬ ν•΄μˆ˜μš•μž₯이 보일 λ•ŒκΉŒμ§€ 계속 λ‚¨μ„œμͺ½μœΌλ‘œ 가라고 λ§ν•©λ‹ˆλ‹€.
  5. 그리고 λ‹€λ₯Έ μ£Όμœ μ†Œ μ§μ›μ—κ²Œ 묻고 μ΄λ²ˆμ— κ·Έ 직원은 λ‚™λ™λŒ€λ‘œ 550번 길을 ν™•μΈν•˜κ³  κ·Έμͺ½μœΌλ‘œ κ°€λŠ” 길을 μ•Œλ €μ€λ‹ˆλ‹€.
  6. μ œκ°€ λ‚™λ™λŒ€λ‘œ 550번 길에 λ„μ°©ν•˜λ©΄ 길을 μ§€λ‚˜κ°€λŠ” μ‚¬λžŒμ—κ²Œ λͺ©μ μ§€μ— μ–΄λ–»κ²Œ 갈 수 μžˆλŠ”μ§€ λ¬Όμ–΄λ΄…λ‹ˆλ‹€.
  7. 이제 κ·Έ μ‚¬λžŒμ€ 37λ²ˆμ§€κ°€ 어디인지 μ•Œλ €μ€λ‹ˆλ‹€.
  8. λ§ˆμΉ¨λ‚΄ μ €λŠ” λΆ€μ‚°κ΄‘μ—­μ‹œ μ‚¬ν•˜κ΅¬ λ‚™λ™λŒ€λ‘œ 550번 κΈΈ 37에 도착할 수 있게 λ©λ‹ˆλ‹€.

μœ„ μ˜ˆμ‹œμ—μ„œ μ£Όμœ μ†Œ 직원과 길을 μ§€λ‚˜κ°€λŠ” μ‚¬λžŒμ΄ λΌμš°ν„°λΌκ³  ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

마무리

 λ„€νŠΈμ›Œν¬λ₯Ό 톡해 데이터λ₯Ό μ΄λ™μ‹œν‚€λŠ” 방식 쀑 "νŒ¨ν‚· κ΅ν™˜"에 λŒ€ν•΄ 정리해 λ³΄μ•˜μŠ΅λ‹ˆλ‹€. λ‹€μŒ κ²Œμ‹œκΈ€ μ—μ„œλŠ” "νšŒμ„  κ΅ν™˜"에 λŒ€ν•΄ 정리 ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€.

 

[λ„€νŠΈμ›Œν¬] 데이터 κ΅ν™˜ 방식 - νšŒμ„  κ΅ν™˜

μ„œλ‘  λ„€νŠΈμ›Œν¬λ₯Ό 톡해 데이터λ₯Ό μ΄λ™μ‹œν‚€λŠ” λ°©μ‹μ—λŠ” νšŒμ„  κ΅ν™˜(circuit switching)κ³Ό νŒ¨ν‚· κ΅ν™˜(packet switching)μ΄λΌλŠ” 두 가지 방식이 μžˆμŠ΅λ‹ˆλ‹€. [λ„€νŠΈμ›Œν¬] 데이터 κ΅ν™˜ 방식 - νŒ¨ν‚· κ΅ν™˜ μ„œλ‘  λ„€νŠΈμ›Œ

dkswnkk.tistory.com

 

λŒ“κΈ€