조각화 된 데이터 그램을 재 조립하는 네트워크 계층은 무엇입니까?

주요한

최근에 네트워크 프로토콜과 OSI 모델에 대해 좀 더 깊이 파고 들었는데, 수신되는 TCP 데이터 그램 (잘못된 용어 인 경우 수정)이 특정 크기를 초과 할 때 여러 부분으로 분할됩니다. 제 라우터의 MTU입니다. 이 정보를 어디서 얻었는지 궁금하다면 내가 찾고있는 일부 정보를 추출하기 위해 SharpPcap을 사용하여 데이터 그램을 캡처했습니다.

어쨌든 나는 단편화 된 패킷의 재 조립이 IP 계층의 작업이되어서는 안되는지 궁금합니다. 왜냐하면 확실히 이것을 달성하기위한 정보 (id, 단편화 플래그, 단편 오프셋)를 제공하기 때문입니다. 또한 TCP 계층은 스트림 기반 프로토콜로 해석되어야한다고 읽었습니다. 그러나 이것은 실제로 응용 프로그램의 버퍼를 올바른 방식으로 채우는 것이 TCP 계층에 달려 있음을 의미 합니다. 따라서 초기 정보가 재구성되고 모든 추가 계층이 " " 될 수 있습니다 .

이 관찰을하기 전에 저는 실제로 TCP 계층이 데이터 그램을 재 조립하는 데 신경을 써야한다고 생각했지만 언급 된 계층 중 어느 것도하지 않습니다.

이로 인해 다음과 같은 질문이 나타납니다. 수신 한 TCP 데이터 그램이 왜 재 조립되지 않았 으며 어떤 계층이 실제로이를 처리해야합니까?

크리스 모건

ip 계층은 http://en.wikipedia.org/wiki/IP_fragmentation의 조각화 및 재 조립을 처리합니다 .

winpcap / airpcap / libpcap을 사용하는 SharpPcap과 같은 도구를 사용하면 캡처중인 장치에서 원시 데이터 그램을 받게됩니다. 많은 어댑터의 경우 이것은 ip 프레임 등을 포함하는 이더넷 데이터 그램입니다.

이는 재 조립이 수행되는 네트워킹 스택에서 처리 한 후 수신 된 데이터와는 대조적입니다.

따라서 데이터가 리 어셈블리를 수행하는 네트워킹 스택의 출력이 아닌 어댑터 수준에서 캡처되기 때문에 SharpPcap (또는 다른 많은 캡처 라이브러리)에서 리 어셈블 된 데이터 그램을 얻지 못할 것으로 예상했습니다.

직접 캡처하거나이 기능을 제공하는 라이브러리를 사용하여 재 조립을 수행 할 수 있습니다. 이러한 구성 요소를 Packet.Net (SharpPcap이 사용하는 패킷 처리 라이브러리)에 추가하여 이러한 재 조립을 제공 할 수도 있습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

분류에서Dev

현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

분류에서Dev

현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

분류에서Dev

전달 된 데이터 그램에서 IP 조각 재 조립 비활성화

분류에서Dev

계층화 된 k- 겹 교차 검증을 적용한 후 데이터를 테스트 및 학습으로 분할하는 방법은 무엇입니까?

분류에서Dev

Linux 네트워크 인터페이스에서 대역폭을 조절하는 방법은 무엇입니까?

분류에서Dev

네트워크 시간 프로토콜을 조정하는 데 선호되는 방법은 무엇입니까?

분류에서Dev

여러 열에서 정의 된 값 비율을 기반으로 데이터 세트를 재조정하는 방법은 무엇입니까?

분류에서Dev

이미 고정 된 데이터 테이블 형식을 변경 / 재 구조화하는 방법은 무엇입니까?

분류에서Dev

네트워크 중단 후 릴리스 업그레이드를 재개하는 방법은 무엇입니까?

분류에서Dev

계층 적주의 네트워크에서 입력 계층이 나타내는 것은 무엇입니까?

분류에서Dev

UML을 사용하여 네트워크 다이어그램을 만드는 방법은 무엇입니까?

분류에서Dev

MATLAB에서이 코드 조각의 벡터화 된 버전을 구현하는 방법은 무엇입니까?

분류에서Dev

하드웨어 추상화 계층에서 제공하는 네트워크 인터페이스 카드의 이름을 바꾸거나 변경하는 방법은 무엇입니까? (우분투 14.04.3)

분류에서Dev

ag-grid : 참조 된 노드의 계층 적 트리 : 참조 된 속성을 편집 가능하게 만드는 방법은 무엇입니까?

분류에서Dev

이 네트워크의 핑을 활성화하는 방법은 무엇입니까?

분류에서Dev

핑에 대한 응답을 처리하는 네트워크 계층은 무엇입니까?

분류에서Dev

Pandas 데이터 프레임을 사용하여 생성 된 이분 네트워크 그래프 시각화

분류에서Dev

계층화 된 아키텍처의 계층에 Visual Studio 프로젝트를 사용하는 경우 물리적 분리의 이점은 무엇입니까?

분류에서Dev

계층 구조에 관계없이 xml 파일에서 '특정 텍스트'를 포함하는 태그를 계산하는 방법은 무엇입니까?

분류에서Dev

네트워크 인터페이스가 기본이된다는 것은 무엇을 의미합니까?

분류에서Dev

Pandas 데이터 프레임 그룹을 반복하고 계층 적 조건을 적용하는 함수를 작성하는 방법은 무엇입니까?

분류에서Dev

이 어셈블리 프로그램이 충돌하는 이유는 무엇입니까 (재 조립 된 ndisasm 출력)?

분류에서Dev

Ubuntu Server 18.04에서 네트워크 인터페이스 구성을 재설정하는 방법은 무엇입니까?

분류에서Dev

Windows 10에서 일일 (네트워크) 데이터 사용량을 보는 방법은 무엇입니까?

분류에서Dev

read_sql 후 다중 인덱스 데이터 프레임의 계층 구조를 재구성하는 방법은 무엇입니까?

분류에서Dev

패치 워크로 조립 된 그림에서 plot_annotation으로 태그의 글꼴 스타일을 조정하는 방법은 무엇입니까?

분류에서Dev

그룹화 된 데이터 프레임의 평균을 계산하는 방법은 무엇입니까?

분류에서Dev

Scikit-Learn에서 훈련 및 테스트 데이터를 계층화하는 방법은 무엇입니까?

Related 관련 기사

  1. 1

    현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

  2. 2

    현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

  3. 3

    현재 활성화 된 네트워크 인터페이스의 이름을 찾는 방법은 무엇입니까?

  4. 4

    전달 된 데이터 그램에서 IP 조각 재 조립 비활성화

  5. 5

    계층화 된 k- 겹 교차 검증을 적용한 후 데이터를 테스트 및 학습으로 분할하는 방법은 무엇입니까?

  6. 6

    Linux 네트워크 인터페이스에서 대역폭을 조절하는 방법은 무엇입니까?

  7. 7

    네트워크 시간 프로토콜을 조정하는 데 선호되는 방법은 무엇입니까?

  8. 8

    여러 열에서 정의 된 값 비율을 기반으로 데이터 세트를 재조정하는 방법은 무엇입니까?

  9. 9

    이미 고정 된 데이터 테이블 형식을 변경 / 재 구조화하는 방법은 무엇입니까?

  10. 10

    네트워크 중단 후 릴리스 업그레이드를 재개하는 방법은 무엇입니까?

  11. 11

    계층 적주의 네트워크에서 입력 계층이 나타내는 것은 무엇입니까?

  12. 12

    UML을 사용하여 네트워크 다이어그램을 만드는 방법은 무엇입니까?

  13. 13

    MATLAB에서이 코드 조각의 벡터화 된 버전을 구현하는 방법은 무엇입니까?

  14. 14

    하드웨어 추상화 계층에서 제공하는 네트워크 인터페이스 카드의 이름을 바꾸거나 변경하는 방법은 무엇입니까? (우분투 14.04.3)

  15. 15

    ag-grid : 참조 된 노드의 계층 적 트리 : 참조 된 속성을 편집 가능하게 만드는 방법은 무엇입니까?

  16. 16

    이 네트워크의 핑을 활성화하는 방법은 무엇입니까?

  17. 17

    핑에 대한 응답을 처리하는 네트워크 계층은 무엇입니까?

  18. 18

    Pandas 데이터 프레임을 사용하여 생성 된 이분 네트워크 그래프 시각화

  19. 19

    계층화 된 아키텍처의 계층에 Visual Studio 프로젝트를 사용하는 경우 물리적 분리의 이점은 무엇입니까?

  20. 20

    계층 구조에 관계없이 xml 파일에서 '특정 텍스트'를 포함하는 태그를 계산하는 방법은 무엇입니까?

  21. 21

    네트워크 인터페이스가 기본이된다는 것은 무엇을 의미합니까?

  22. 22

    Pandas 데이터 프레임 그룹을 반복하고 계층 적 조건을 적용하는 함수를 작성하는 방법은 무엇입니까?

  23. 23

    이 어셈블리 프로그램이 충돌하는 이유는 무엇입니까 (재 조립 된 ndisasm 출력)?

  24. 24

    Ubuntu Server 18.04에서 네트워크 인터페이스 구성을 재설정하는 방법은 무엇입니까?

  25. 25

    Windows 10에서 일일 (네트워크) 데이터 사용량을 보는 방법은 무엇입니까?

  26. 26

    read_sql 후 다중 인덱스 데이터 프레임의 계층 구조를 재구성하는 방법은 무엇입니까?

  27. 27

    패치 워크로 조립 된 그림에서 plot_annotation으로 태그의 글꼴 스타일을 조정하는 방법은 무엇입니까?

  28. 28

    그룹화 된 데이터 프레임의 평균을 계산하는 방법은 무엇입니까?

  29. 29

    Scikit-Learn에서 훈련 및 테스트 데이터를 계층화하는 방법은 무엇입니까?

뜨겁다태그

보관