인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

김현수님의 프로필 이미지

작성한 질문수

CS 지식의 정석 | 디자인패턴 네트워크 운영체제 데이터베이스 자료구조

IP주소체계 #2: IPv4와 IPv6 ★★★

CRC / CHECKSUM

작성

·

50

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

강의를 보다보면 crc와 checksum이 한몸처럼 움직인다고 이해를 하게 됩니다.

(물론 제가 이해를 잘못 했을 것이라고 생각하며 글을 작성합니다..)

"IPv4에는 CRC를 통한 손상된 패킷을 확인하고 폐기하는데 쓰는 체크섬필드가 있습니다. (Header Checksum 필드)그러나 IPv6는 해당 체크섬필드가 존재하지 않습니다"

 

"프레임에서 사용되는 CRC/체크섬 트레일러"

 

이런 부분처럼요

 

이후 정리를 하는 과정에 crc와 checksum은 엄연히 다른게 아닌가라는 생각이 들었습니다.

둘은 다른 종류의 알고리즘이며 crc가 checksum보다 강한 오류 검사 알고리즘이며

crc는 주로 2계층에서 checksum은 주로 3계층에서 사용이 되고

 

"IPv4에는 CRC를 통한 손상된 패킷을 확인하고 폐기하는데 쓰는 체크섬필드가 있습니다. (Header Checksum 필드)그러나 IPv6는 해당 체크섬필드가 존재하지 않습니다"

=>해당 발췌 부분에서는 ip헤더에 존재하던 header checksum이 v6로 오면서 사라졌다

 

"프레임에서 사용되는 CRC/체크섬 트레일러"

=>데이터링크의 데이터 단위인 프레임에서는 crc알고리즘을 통해 오류를 찾아낸다

 

이렇게 정리를 하고 들어가면 될까요?

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 현수님 ㅎㅎ

먼저 혼란스럽게 한점 죄송하다는 말씀을 드립니다.

해당 발췌 부분에서는 ip헤더에 존재하던 header checksum이 v6로 오면서 사라졌다

 -> 네 맞습니다.

 

데이터링크의 데이터 단위인 프레임에서는 crc알고리즘을 통해 오류를 찾아낸다

-> 네 맞습니다.

 

좀 더 자세한 설명은 다음과 같으며 이부분은 빠르게 수정후 업로드 하도록 하겠습니다.

image.png

 

CRC

CRC는 체크섬의 한 종류로 데이터를 하나의 큰 이진수로 보고, 미리 정해진 다항식을 이용해 데이터를 나눈 뒤, 그 나머지 값을 통해 오류 여부를 확인합니다. 주로 데이터 링크계층(프레임) 에서 많이 쓰이며 FCS 필드내에 CRC로 계산된 값이 저장되어 있습니다.


 

김현수님의 프로필 이미지
김현수
질문자

감사합니다! 좋은 강의 덕분에 열심히 공부하고 있습니다!

큰돌님의 프로필 이미지
큰돌
지식공유자

감사합니다. ㅎㅎ 더 좋은 강의가 되도록 노력하겠습니다. :)

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다. 현수님. CRC와 체크섬에 대한 혼동이 있으신 것 같아 관련 내용을 정리해드리겠습니다.

CRC와 체크섬은 데이터의 무결성을 검증하기 위한 디지털 오류 감지 방법입니다. 하지만 두 방법은 서로 다른 원리로 작동합니다.

  • CRC (Cyclic Redundancy Check): 주로 2계층(데이터 링크 계층)에서 사용되며 다항식을 기반으로 한 계산을 통해 오류를 감지합니다. 네트워크 하드웨어에서 주로 구현되며 오류 감지 능력이 뛰어납니다. 특히, 프레임 트레일러에 주로 추가되어 데이터가 전송될 때 손상 여부를 감지합니다.

  • 체크섬: 일반적으로 3계층(네트워크 계층)에서 사용되며, 데이터를 일정 크기로 나눈 뒤 각 나누어진 부분의 합계를 통해 오류를 감지합니다. CRC에 비해 상대적으로 간단한 메커니즘입니다. IPv4에서는 헤더에 포함되어 해당 패킷의 손상 여부를 판단했으나, IPv6에서는 이러한 필드가 제거되어 있습니다. 이는 IPv6가 다른 오류 감지 방법들을 더 효율적으로 사용하고 있기 때문입니다.

현수님이 언급하신 것처럼, IPv6의 경우 체크섬 필드가 사라졌습니다. 이는 더 효율적인 오류 검출 방식을 채택한 결과입니다.

다소 복잡하게 느껴질 수 있지만, CRC가 보다 복잡한 오류 감지 알고리즘이며 주로 2계층에서 사용되고, 체크섬은 3계층에서 주로 사용되며 그 대상과 방식에서 차이가 있다는 점에 주목하면 됩니다. 이러한 이해를 바탕으로 학습을 이어가시면 도움이 되실 것 같습니다.

관련하여 유사한 질문과 강사님의 답변은 아래 링크를 참고해주세요:
- CRC 와 CheckSum의 차이가 잘 이해가 안됩니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.