'구리구리'에 해당되는 글 35건

  1. 2008.06.25 라우팅 테이블 갱신과정[routing table]
  2. 2008.06.22 Windows Shadow Copy(윈도우 쉐도우 복사본) 1
  3. 2008.06.21 CPU overclock(오버클럭) 그것이 궁금하다
  4. 2008.06.18 Routing & Routing Protocol(라우팅)
  5. 2008.06.09 IPv6 주소표기법 및 실전구성 2
  6. 2008.06.07 FSB의 잘못된 개념과 변화 3
  7. 2008.06.04 Internet Protocol Version 6(IPv6) – 2nd 5
  8. 2008.05.28 Internet Protocol Version 6(IPv6) - 1st 4
  9. 2008.05.21 IP address management 2
  10. 2008.05.14 IPv4(Internet Protocol v4) 패킷의 구성 1

라우팅 테이블 갱신과정[routing table]

구리구리 2008. 6. 25. 09:00


안녕하세요…!
많이 더우시죠? 이열치열 이라는 말이 있듯이 모두들 공부 열심히 하자구요!


오늘은 RIP에 대해서 배워보도록 할께요….
RIP란 무엇이냐!!! 무엇일까요? 처음 들어보시죠?
라우팅 테이블이 어떻게 변경되는지… 고고싱!

 

RIP는 거리벡터 알고리즘을 사용하는 가장 단순한 라우팅 프로토콜 입니다.

거리벡터 알고리즘에서는 라우팅 정보를 인접 라우터와 주기적으로(일반적으로 30초) 교환하여 테이블을 갱신하고 이를 통해 경로를 선택합니다!

예를 들어 아래 그림과 같은 네트워크에서 라우터 A 에서 라우터 B로 가는경우 네트워크 N1만을 경유하면 되기 때문에 메트릭 값은 1이며, A에서 B를 거쳐 C로 가는 경우에는 네트워크 N1,N2를 경유해야 하기 때문에 메트릭 값은 2가 됩니다.

위 그림에서 A의 초기 라우팅 테이블 값을 표로 나타내보면 아래와 같습니다.

A의 초기 라우팅 테이블

목적지

비용

다음 홉

N1

1

-

N2

-

N3

1

-

N4

1

-

N5

-

N6

-

라우터 A의 경우 처음에는 인접 네트워크인 N1, N3, N4에 대한 정보만을 갖는 라우팅 테이블을 구성합니다. 인접한 네트워크의 비용은 1로 설정되고 그 외의 네트워크에 대한 비용은 무한대(∞)로 설정이 됩니다. 이렇게 되면 라우터 B, D, E와 테이블 교환을 하게 되며, 인접하지 않아서 알지 못했던 N2, N5, N6에 대한 정보를 얻게 됩니다.

위 과정을 반복하게 되면 아래와 같은 테이블이 발생하게 됩니다.


 

라우터 B를 기준으로 했을 때 최종 라우팅 테이블은 마지막 표와 같습니다.(맨 위의 그림 참조)
N1까지 가려면 비용은 1이들고 거치는 라우터가 없기 때문에 다음 홉은 – 없습니다.
만약 N3로 가려면 비용은 2가 들고 중간에 A라우터를 거쳐야 하기 때문에 다음 홉은 A가 됩니다.

정확학 라우팅 테이블 갱신 알고리즘은 다음과 같습니다.


 

위 알고리즘을 바탕으로 라우팅 테이블 갱신과정을 살펴보면!


 

위와 같이 변하게 됩니다
제가 공부할 때는 첫 번째 방법을 사용했습니다.. 꽁수긴 하지만 잘 들어 맞더군요… ^^
정확한 내용은 아래의 내용입니다.

음~ 우리가 사용하는 라우터 테이블의 내용, 갱신과정을 알아보았는데요… 많이 어렵나요??
개인적으로 와서 질문하세요~! 꼭 오셔야 합니다 ^^

다음 시간에는 windows server 2003 환경에서 라우터 구성을 살펴 보도록 하겠습니다
어떻게 구성을 할까요??? 다음주를 기대해 주세요~

바이바이~ ^^/


 


보이세요?? 나는 지금도 여전히 도전하고 있습니다!!

Always Smile ^___________^

:

Windows Shadow Copy(윈도우 쉐도우 복사본)

구리구리 2008. 6. 22. 09:00

밤새도록 작업했던 중요한 문서 파일을 실수로 덮어 써보신 경험이 있나요??

실수로 삭제하거나 수정함으로 인해 데이터가 손실되는 경우가 많습니다. Windows vista에는 데이터를 보호하는 쉐도우 복사본이라는 기능이 있습니다

이 기능은 business, enterprise, ultimate 버전에서만 사용할 수 있으며 파일의 작업 시점 복사본을 자동으로 만들어 실수로 삭제되거나 수정된 문서를 빠르고 쉽게 복구 합니다.

그럼 이 기능은 어떻게 사용하는 것일까요?


위 그림들이 있습니다 "정원" 이라는 그림을 수정 해보도록 하겠습니다.

위 그림을 사진겔러리 수정 부분에서 편집 및 수정을 아래와 같이하였습니다

이렇게 사진이나 문서, 그림 등을 수정하고 저장하였을 때, 예전 파일이 다시 필요하다 하지만 예전 파일이 없어졌다 하면, 아래와 같이 하시면 복구가 됩니다.

해당 파일에서 마우스 오른쪽 버튼 클릭! -> 속성

속성 탭에서 이전버전 선택 후 복원 클릭!

복원을 하게 되면

복원을 했다는 메시지가 나옵니다.

복원이 완료 되었습니다. ^^

이 기능은 단일 파일은 물론 전체 폴더에고 작동 합니다. 파일 하나를 복원할 때는 디스크에 있는 실시간 복사본과는 다은 이전 버전이 모두 표시됩니다. 폴더의 이전 버전에 액세스할 때는 폴더 계층 구조를 이전 시점의 상태로 탐색 할 수 있습니다.

보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

:

CPU overclock(오버클럭) 그것이 궁금하다

구리구리 2008. 6. 21. 09:00


1. 기초적인 개념

오버클럭에 대한 직접적인 설명을 하기 전에 먼저 기초적인 개념부터 말하도록 하겠습니다. 기초의 중요함은 항상 강조해도 부족함이 없습니다.. 기초적인 내용을 다루고 있기 때문에... 내공이 충만하신 분들은 피해주세요
자개 내용을 클릭해 볼까요?

1-1. 오버클럭(Overclock)의 개념

오버클럭(Overclock)이란 단어는 오버(Over)와 클럭(Clock)으로 되어 있습니다. 이걸 흔히 줄여서 그냥 '오버'라고 말합니다만, 오버(Over)라는 단어 자체는 일상 생활에서 이미 자주 쓰이는 단어이기 때문에 굳이 설명은 하지 않겠습니다.

클럭(Clock)은 컴퓨터 내의 장치에 공급되는 기본적인 주기 신호 하나의 시간 간격을 뜻합니다. 만약 이 클럭의 주파수(Frequency)가 빨라진다면, 이 클럭 주파수가 공급되는 회로의 동작속도가 빨라지게 되며, 이는 곧 컴퓨터의 속도가 빨라지게 되는 것을 의미합니다.

물론 클럭이 곧 CPU의 성능을 나타내는 것은 아닙니다. CPU의 성능은 클럭 말고도 다른 여러 요소들에 의해 결정됩니다. 굳이 예를 들어 보자면 내부 구조, 캐시의 용량과 속도, 지원하는 명령어 등등... 최근 들어 클럭 말고 다른 요소들(L2캐쉬, L3캐쉬, 코어의수)의 중요성이 더욱 부각되기 시작하면서, 유명 CPU 제조사인 인텔과 AMD는 자사의 제품 구분을 클럭을 이용하여 하지 않고 별도의 모델명을 도입하여 하고 있습니다.

그럼에도 불구하고 클럭은 CPU의 성능의 성능을 결정하는 아주 중요한 요소 중에 하나라는 것만은 틀림 없습니다. 바로 이 클럭을 사용자 임의로 강제로 올려서 사용하는 것이 바로 오버클럭인 것입니다.


 

1-2. 오버클럭의 원리

위에서 클럭을 억지로 올린다고 했는데, 그 클럭을 억지로 올린다는 것이 과연 어떻게 가능한 것인지 한번 알아 보도록 하겠습니다.

모든 전자 제품들이 다 그렇지만, 그 중에서도 특히 CPU는 철저한 검사와 시험을 통한 선별 작업을 거칩니다. 하지만 선별 작업이라고 해서 CPU의 성능만을 보고 그대로 분류를 하는 게 절대로 아닙니다.

먼저 CPU의 정상 작동 조건이 출고 표준에 맞아야 합니다. 즉, "나는 전기도 엄청 많이 먹고 열도 엄청 많이 나지만 능력 하나는 끝내준다!"...이런 CPU가 있다고 할지라도, 결국 표준 온도/표준 전력 소모량이라는 조건 하에서 낼 수 있는 속도로 작동하도록 맞춰지게 됩니다.

이런 문제도 있습니다. 만약 2.6162081705GHz....정도로 작동하는 CPU가 있다고 한다면 이것을 과연 어떻게 정해야 할까요? 이걸 제 성능 그대로 정해서 팔게 된다면 시장에 엄청난 혼란이 생기게 됩니다... (시장에서 팔리는 CPU의 종류가 기하급수적으로 늘어나겠지요) 그래서 2.6162081705GHz...라면 2.6GHz이라고 표기를 해서 파는 것이고, 1.9998791GHz...정도로 작동하는 CPU라면 2.0GHz이라고 표기를 해서 파는 것입니다.

또 위와 비슷한 경우인데 CPU 제조 기술이 너무 좋아서(?) 2.0GHz 클럭이 나오는 제품이 필요한데, 최저 2.4GHz 클럭의 제품만 생산되어 나올 경우에도 역시 2.0GHz이라고 써서 팔게 됩니다. (2.4GHz 클럭 제품의 가격을 내리는 게 제일 좋은 방법이겠지만...)

그 외에도 더 있겠지만 이만 줄이겠습니다. (Intel 직원이 아닌 관계로)어쨌건 이렇게 CPU 제조사들이 복잡하게 계산기 두드려 가면서 손익을 따지고 기타 여러 가지 변수가 작용하게 된 결과, 일반 사용자로서는 이해하기 힘들고 이해할 필요도 없는 이런 상황이 조성되게 됩니다.

어쨌건, 이런 여러 가지 이유 때문에 생기게 되는 CPU 능력의 사용하지 않는 여분의 능력을 임의로 설정하여 사용하는 것이 가능하며, 그것이 바로 오버인 것입니다.


 

1-3. 오버클럭의 목적

분명 위에서 CPU가 안 쓰는 능력을 쓰는 것이 오버라고 했습니다. 그렇다면 오버클럭의 목적은 바로 성능 향상일 것이라고 생각하실 분들이 아주 많으실 것입니다만, 개인적으로는 전혀 그렇게 생각하지 않습니다.

왜냐하면 요즘 CPU의 성능 향상이 정말 많이 이루어졌기 때문입니다. 즉, 지금 판매하고 있는 CPU의 성능 수준이라면 일반 작업에 전혀 부족함이 없습니다. (그런데 왜 우리 집에서는 아바가 끊겨요?...같은 질문은 외면하겠습니다) 이 상황에서 CPU의 클럭이 몇 백MHz 이상 올라간다 하더라도 그 성능 향상은 크지 않으며 그것을 체감하기는 더더욱 어렵습니다. (성능에 문제가 생기는 것은 CPU보다는 다른 부분이 부족하여 생긴 경우일 가능성이 큽니다. 예를 들어 그래픽카드 등등)

게다가 CPU 오버가 그냥 되는 것도 아닙니다. 밑에서도 설명하겠지만 CPU 오버를 위해서는 경우에 따라서 상당한 수준의 금전적인 투자가 수반되게 되는데, 문제는 이 금액이 오버클럭을 통해 얻는 성능 향상에 견주어 봤을 때, 결코 흔히들 말하는 "가격대/성능비"가 우수하다고 보기 어려우며, 오히려 그 돈으로 직접 업그레이드를 하는 것이 가능한 경우도 있습니다.


 

1-4. 주의사항

마지막으로 아마도 초보 분들께서 제일 많이 걱정하고 계실 것들에 대해 설명하겠습니다. 그것은 바로 "오버하면 컴퓨터가 고장 나지 않느냐", "오버하면 컴퓨터 수명이 줄어들지 않느냐", "오버하면 컴퓨터가 불안정하지 않느냐" 정도일 것입니다.

오버를 하면 컴퓨터가 고장 날 확률은 확실히 더 높아집니다. 그러나 오버클럭 그 자체 때문에 고장이 난다기 보다는, 너무 무리한 수치의 오버클럭을 했다거나, 늘어난 발열을 처리하기 위한 쿨링 보강이 미흡했다거나, 안정성 테스트를 제대로 거치지 않고 오버한 상태로 썼다던가, 조작 과정에서의 실수라던가... 등등의 이유가 훨씬 더 많습니다. (잘 되다가 갑작스런 원인 불명의 비명횡사... 같은 것도 있겠지요)

오버클럭을 하면 관련 부품의 수명이 줄어들 가능성이 있습니다. 아니, 줄어든다고 칩시다. 그런데 수명이 확실히 줄어든다고 가정을 한 상황에서 CPU의 수명이 10년이라고 치고, 오버를 해서 그 수명이 무려 절반씩이나 줄어든다고 하더라도 5년입니다. 지금처럼 컴퓨터의 업그레이드 주기가 짧아지고 나날이 새로운 제품이 쏟아져 나오며 그 발전의 속도가 점점 빨라지는 상황에서 5년이라면 엄청 긴 게 아닐까요?

오버클럭을 하면 컴퓨터가 불안해진다... 예. 오버클럭을 '과도하게' 하면 확실히 불안정합니다. 그런데 적당히 오버클럭을 하고, 필요한 조치를 모두 제때 하고, 안정성 테스트를 확실하게 통과하면 불안정할 일이 없습니다.


 

1-5. 준비물

메인보드 설명서를 한번 정독하시길 바랍니다. 설명서는 제조사/유통사의 홈페이지에서 PDF 파일로 된 것을 받으실 수 있으며, 최근에는 한글로 된 것도 있습니다. 메인보드 설명서는 가장 간단하게 접할 수 있는 오버클럭을 위한 바이오스 옵션 조절에 대한 설명서입니다. 하지만 메인보드 설명서를 한번 보고 그 내용을 전부 이해할 수 있다면 그게 무슨 초보자이며, 이따위 글은 필요 하지도 않을 것입니다.. 하지만, 메인보드 설명서를 가지고 있기는 해야 나중에 급할 때 뒤져볼 수 있습니다.

또한 오버클럭을 얼마나 하느냐에 따라 좋은 쿨러 등이 필요하다고 할 수 있습니다. 때로는 기본 들어있는 쿨러로 커버되는 경우가 있지만 온도가 너무 많이 올라가면 급사 할 수도 있으니까요.. 요즘은 CPU가격이 싸져서 좋은 쿨러 살 금액이면, 한 단계 높은 CPU를 사는 편이 좋겠죠?


 

다음시간에는 기본적인 오버클럭 방법에 대해서 알아보겠습니다


:

Routing & Routing Protocol(라우팅)

구리구리 2008. 6. 18. 09:00

안녕하세요..!

GuriGuri의 네트워크시간 입니다.

이번 시간에는 라우팅 이라는 것을 배워볼텐데요…

처음 들어보는 분들도 있을꺼에요…. 라우터…라우팅~ 점점 어려운 말들이 나오고 있어요!

나중에 네트워크 보안을 배울 때 중요한 부분들이 많으니 정신 바~~~짝 붙들어 매시고 달려볼까요?


고고싱~! GoGo!

라우팅이란 무엇일까요?

라우팅은 가용한 모든 네트워크 구성정보를 이용하여 최적의 경로를 선택하고 선택된 경로를 따라 패킷

을 전달하는 일련의 과정을 의미합니다.

라고 책에 나와있네요? ㅎㅎ 너무 어렵다구요? 간단하게… 실시간 위성네비게이션 이라 생각하시면

되겠네요… 길이 막혀있다면! 옆길을 통해서 빠르게 가는 방법! 똑같습니다!

이제 조금 이해 되셨죠? 정말 간단합니다



라우팅 테이블구성방법에 따라 정적 라우팅과 동적 라우팅 알고리즘으로 분류합니다.

정적 라우팅은 관리자가 라우터에 직접 라우팅 테이블을 기록합니다. 즉! 사용자가 직접 길찾기!!

동적 라우팅은 라우터가 직접 인접 라우터와의 정보교환을 통해 라우팅 테이블을 선정합니다.

음… 라우터끼리 교신을 하여 빠른 쪽으로 안내한다… 이렇게 생각하시면 됩니다!

*참고) 하나의 라우팅 프로토콜을 이용해서 인터넷의 모든 라우터를 관리하는 것은 현실적으로 어렵기 때문에 여러 개의 AS(자율시스템, Autonomous System)로 나누어 계층적으로 관리합니다.

또한 스태틱 라우팅과 디폴트 라우팅이 있는데 스태틱은 관리자가 특정 목적지로 가기 위해 경로를 지정하는 것이며, 디폴트 라우팅은 무조건 모든 트래픽을 한 곳으로 보내는 것 입니다

아래 그림과 같습니다.

AS 내부 라우터는 하나 이상의 IGP(Interior Gateway Protocol)를 사용할 수 있으며, AS 외부로 패킷을 전달하기 위하여 EGP IGP(exterior Gateway Protocol) 라는 것을 사용합니다

*참고) IGP : RIP(Routing Information Protocol) : 거리벡터 알고리즘
               IGRP(Interior Gateway Routing Protocol) : 거리벡터 알고리즘
               OSPF (Open Shortest Path First) : 링크 상태 알고리즘
        EGP : BGPv4(Border Gateway Protocol)


너무 많이 어려운 내용인데요… 이러한 것들이 있다고만 알아두시면 될 것 같습니다

다음시간에 IGP에 대해서 아주 아주 간단히!! 알아보도록 하겠습니다

라우팅의 예와 라우팅 테이블, 라우팅 테이블의 갱신과정을 한번 보도록 할께요…

어려우니 한번씩 훑어 보세요 ^^


다음주에 또 만나요~ ^^/ 주말에 하드웨어 관련 포스팅도 많이 봐주세요~



사용자 삽입 이미지








보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

:

IPv6 주소표기법 및 실전구성

구리구리 2008. 6. 9. 09:00

이번시간에는 IPv6 주소 표기법에 대해서 알아 보겠습니다


기존에 사용하던 IPv4에서는 주소만 넣었으면 되었는데요… 음 168.126.63.1 이런식으로 숫자만 넣으면 되었지요…

하지만 IPv6에서는 128비트로 구성되어 있으며, 16비트(4자리)씩 콜론(:)으로 나눈답니다

이러한 방식을 16진수 콜론 표기법이라고 합니다

하나의 예를 볼까요??

예를들면
2002:140a:0a5c:0000:140a:0a5c
이러한 형식인데.. 이렇게 쓰면 너무 길고 불편하기 때문에 다른 방법(0의 값을 생략)을 제안했습니다


 

위 예시의 주소를
2002:140a:a5c:0:a5c
라고도 표기가 가능합니다 연속된 0의 숫자나 상위가 0인 경우 생략할 수 있습니다

IPv4와 IPv6를 동시에 사용하고 있는 지금! 한마디로 과도기라고 보면 되는데요…. Ipv4를 버리고 단숨에 ipv6로 갈수는 없듯이~ 혼용해서 쓰고 있습니다

예를 들면 203.252.53.46의 경우 ::cbfc:352e로 표현합니다 이때 하위32비트는 IPv4형식으로 IPv6 주소를 표현 할 수도 있습니다. 즉, x:x:x:x:x:d.d.d.d ("x"는 16진수, "d"는 10진수) 형식이 됩니다.



 

윈도우에서 IPv6를 구성해 보자!!!

설치 결과 화면!!


 

그럼 이번엔 IPv6 패킷을 분석해 보도록 할까요?

패킷 캡쳐 프로그램은 netmon이나 ethereal 등 여러 가지 프로그램이 있습니다

취향에 맞게 골라 쓰세요… ^^ 모두 영문이라 좀 어렵지만 사용하고 나면 괜찮아 져요!!


 

자… 위 패킷을 한번 분석해보면…

1번 : 데스티네이션 맥 주소(목적지주소)

2번 : 소스 맥 주소(원본주소)

3번 : 솔찍히 모르겠습니다 ㅡㅜ

4번 : IP버전

5번 : 트래픽 클래스 필드(설정되어있지 않음)

6번 : 플로우 레이블 필드(설정되어있지 않음)

7번 : 페이로드 길이 (24바이트)

8번 : 다음헤더 (TCP) 8

9번 : 홉수 제한 : 128

10번 : 송신지 IP주소 (fe80::201:2ff:fe55:2c98)

11번 : 수신지 IP 주소 (fe80::250:daff:fed0:b4cd)


 

이렇게 되네요 ^^


 

이것을IPv6 패킷 포멧 형식으로 나타내면


 

위 그림처럼 됩니다….. 지난시간에 보여드렸던 패킷 형식… 이제 이해가 좀 되시나요???

Icmpv6는 어려운 내용이 많고 자세히 파고 들어야 하기 때문에… 댓글의 요청을 봐서…. 올리도록?? 할게요 ^^

다음시간에는…. 라우팅 프로토콜이 무엇인지 또 라우팅이 무엇인지 알아보도록 할께요…



보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^


 

:

FSB의 잘못된 개념과 변화

구리구리 2008. 6. 7. 09:00


1. FSB에 대한 잘못된 개념

"제 CPU의 FSB는 800MHz입니다. 제 메모리의 FSB는 400MHz인데 괜찮을까요?"
"제가 듣기로 AGP의 FSB는 66MHz이고 PCI의 FSB는 33MHz라고 하던데요."

최근 여러 하드웨어 관련 질문을 보면 FSB를 위와 같이 "버스대역폭" 정도의 의미로 사용하는 경우가 많은 듯 합니다. 이런 잘못된 용어의 사용은 비단 하드웨어 초보자들 뿐만 아니라 각종 하드웨어 잡지나 전문 사이트, 혹은 업체와 같이 전문적인 정보를 다루는 곳에서도 종종 이루어지고 있습니다.

FSB(Front Side Bus)란 용어에서 보듯이 엄연한 특정 버스(Bus)의 명칭입니다.
보다 정확히 설명을 하자면, CPU의 L2캐쉬에서 메인메모리에 이르는 버스를 지칭하는 용어입니다.

FSB는 BSB(Back Side Bus)에 대비되는 개념으로서, 말하자면 CPU가 연산에 필요한 명령어와 데이터를 메인 메모리로부터 가져오는 전체 버스를 CPU를 기준으로 Back-side와 Front-side로 나누어 놓은 것으로 이해하면 되겠습니다.  


 
따라서 "제 CPU의 FSB는 800MHz"라는 일반적인 용어사용에서도 문제가 있다고 할 수 있습니다. FSB는 어떤 "동작클럭"을 나타내는 용어가 아니며, 정확한 쓰임으로 사용하려면 "제 컴퓨터의 FSB클럭은 800MHz"정도로 사용하는 것이 옳겠습니다.

2. FSB의 개념의 변화

FSB라는 버스의 개념은 사실 어떤 특정한 기능을 하는 버스나 특정한 역활을 하는 버스라기 보다는 CPU의 코어(Core)와 메모리간의 데이터 이동경로를 CPU를 기준으로 나누어 놓은 위치상의 개념이라 할 수 있습니다. 따라서 우리가 FSB라는 용어를 어떻게 쓰건 "CPU외부에서 메인메모리로 이어지는 버스"라는 개념 자체는 유지되겠습니다만, 메인메모리의 형식이 변화하고 클럭분배방식의 변화에 따라 우리가 편의대로 자주 사용하는 "FSB(혹은 FSB클럭)"라는 용어는 원래의 개념보다 다소 축소된 특정 버스만을 지칭하게 되었습니다.

오늘날 우리가 "FSB"라고 부르는 것은 원래의 개념이야 어떻게 되었건 CPU에서 ASIC(앞의 그림에서 보다시피, 오늘날 메인보드에서 North Bridge, 혹은 (G)MCH라고 부르는)사이의 버스, 즉 CPU의 외부버스에 국한되는 개념이 되었습니다.

FSB를 좀더 세분화해서 본다면, CPU와 ASIC간의 외부버스와 ASIC와 메인 메모리간의 메모리 버스로 나누어 볼 수 있습니다.

메모리 버스와 외부버스의 관계가 보다 대등해지고 밀접해지게 된, SDRAM이 메인 메모리로 자리잡게 된 이 후의 시스템을 예로 들어 살펴보겠습니다.
최초 등장한 방식은 CPU 외부버스의 동작클럭과 메모리 버스의 동작클럭이 동일한 동기방식 버스구조였습니다.
   

 

위 그림과 같이, 동기방식의 대표격인 440BX칩셋을 예로 들어보겠습니다.
펜티엄2(데슈츠 코어)와 440BX칩셋(82443 노스브리지칩), 그리고 PC-100 SDRAM을 조합한 시스템의 경우, CPU와 ASIC간의 외부버스의 동작클럭은 클럭제네레이터(Clock Generator : 클럭발생기)의 호스트클럭(Host Clock)으로 100MHz를 공급받게 됩니다. 그리고 메모리 버스의 경우, 호스트클럭의 1/1로 클럭디바이딩(Clock Dividing : 호스트 클럭의 특정 비율로 클럭을 조율)되어 마찬가지로 100MHz를 공급받게 됩니다.
따라서 이 경우, 호스트클럭(즉, 외부버스클럭)과 메모리 버스 클럭은 동일한 100MHz이므로, FSB클럭이라고 지칭하는 경우 외부버스클럭과 메모리버스클럭 모두를 지칭할 수 있었습니다.

동기방식구조 : 호스트클럭 = 외부버스클럭 = 메모리버스클럭 = FSB클럭

하지만 오늘날의 대부분의 메인보드의 경우, 더 이상 위와 같은 동기방식구조는 적용하고 있질 않습니다.
즉, 대부분의 경우 CPU의 외부버스클럭과 메모리버스클럭을 반드시 맞추어줄 필요가 없다는 것입니다. 하나의 CPU에 다양한 메모리 조합이 가능하며, 이와 같은 경우 더 이상 "호스트클럭 = 메모리버스클럭" 이라는 등식은 성립하지 않게 되었습니다.

비동기방식구조 : 외부버스클럭 ≠ 메모리버스클럭

그럼 이 경우, FSB클럭은 어떤 버스에 맞추어야 할까요. 가령 166MHz버스클럭을 사용하는(데이터레이트는 333MHz) AMD의 Barton을 이용하는 사용자가 PC-3200 DDR-sdram(클럭 200MHz, 데이터레이트 400MHz)을 사용한다고 가정해봅시다. 이런 경우 외부버스클럭과 메모리버스클럭은 같지가 않습니다.(166 ≠ 200)
최근 유저들이 주로 사용하는 "FSB"는 이 경우 CPU의 외부클럭이나 데이터레이트를 지칭하고 있습니다. 즉, "Barton의 FSB(클럭)은 333MHz다"는 식으로 말이죠.

이상과 같은 개념에서 볼 때, 맨 처음에 언급한 잘못된 용어사용의 예인 "제가 듣기로 AGP의 FSB는 66MHz이고 PCI의 FSB는 33MHz라고 하던데요."와 같은 사용은 전혀 개념에 맞지 않는 말이란 것을 알 수 있을 것입니다. AGP버스의 동작클럭은 AGP(버스)클럭, PCI버스의 동작클럭은 PCI(버스)클럭이라고 부르는 것이 옳겠지요. 아무 곳에서나 FSB라는 말을 쓰는 것은 옳지 않습니다.

이런 경우 메모리에 대해서도 "PC-3200 DDR메모리의 FSB는 400MHz다"라고 하는 것은 옳지 않은 사용법이라고 하겠습니다. FSB는 CPU를 기준으로 한 버스의 구분으로서, ASIC에서 메모리에 이르는 버스의 경우 메모리버스로 한정짓는 것이 옳습니다. 즉, 이러한 경우 "PC-3200 DDR메모리의 클럭은 400MHz다"라고 말하는 것이 맞겠습니다



사용자 삽입 이미지



Always Smile ^_______^
GuriGuri
:

Internet Protocol Version 6(IPv6) – 2nd

구리구리 2008. 6. 4. 09:00

구리구리의 네트워크 보안입니다!

오늘은 지난 시간에 이어서 IPv6의 패킷에 대해서 알아볼께요…
IPv4와 어떠한 점이 달라졌을까요??
IPv6로 바뀌는 점에서 네트워크의 기본을 알아야 보안도 가능하겠죠?

패킷 구성을 좀더 자세히 하나하나 알아보도록 할게요…
내용이 다소 많아도 IPv6에서 꼭 중요한 부분이니 잘 살펴봐주세요~

자~ 그럼 고고싱~!

IPv6 패킷 구성

  • 기본헤더 : 40바이트이며(IPv4의 2배) 패킷의 기본적인 정보와 송수신 주소 등, 전송에 필수적인 정보로 구성
  • 확장헤더 : 추가적인 전송기능이 필요할 때 사용되며 기본 헤더 뒤에 선택적으로 추가
  • 데이터 필드 : IP 상위 프로토콜에서 사용하는 부분으로 TCP 세그먼트나 UDP 데이터 그램 등이 될 수 있음
  • IPv6 패킷 포맷
    • IPv4 의 헤더 길이, 식별자, 플래그, 분할 옵셋, 헤더 체크섬과 같은 다섯 가지 필드가 제거
    • 서비스 타입 필드는 트래픽 클래스 필드로 대체
    • 프로토콜 타입 필드와 TTL(Time To Live) 필드는 다음 헤더와 홉 제한 필드로 이름이 변경
    • 플로우 레이블 필드가 추가(패킷의 흐름을 표시 -고속 전송)

  1. 버전
    1. IP 프로토콜 버전을 의미하며 6으로 설정
  2. 트래픽 클래스(Traffic Class : 8 비트)
    1. IPv6 패킷의 클래스나 우선 순위를 나타내며 IPv4의 TOS(Type Of Service) 필드와 유사한 기능을 수행
    2. 실시간 데이터와 같이 특별한 처리가 필요한 경우 특정 값을 사용하여 다른 패킷과의 차별화를 지원
  3. 플로우 레이블(Flow Label : 20 비트)
    1. 동일한 서비스 클래스를 필요로 하는 패킷들을 표현
    2. 기본적으로 0으로 설정되는데 음성, 화상 등의 실시간 데이터 트래픽을 나타내기 위해 0이 아닌 값으로 설정
    3. 라우터는 흐름 레이블 테이블을 가지고 비슷한 패킷들을 잡아 우선적으로 전송
    4. 플로우 레이블을 지워나지 않는 라우터는 이를 무시함
  4. 페이로드 길이(Payload Length : 16 비트)
    1. 페이로드 길이를 바이트 단위로 표시
    2. 최대 길이는 65,535 바이트이며 이보다 더 큰 데이터를 보낼 때는 점보 페이로드(Jumbo Payload) 확장 헤더 옵션을 사용
    3. 점보 페이로드 옵션을 사용할 때 이 페이로드 길이 필드는 0 으로 설정
  5. 다음 헤더(Next Header : 8 비트)
    1. IPv6 기본 헤더 이후에 전송되는 데이터 종류를 나타내며 확장 옵션 또는 상위 계층 데이터의 종류를 지정
    2. 다음 헤더 코드 값

값(10진수)

헤더

0

홉-바이-홉 옵션

1

ICMPv4

2

IGMPv4

4

IP

6

TCP(Transmission Control Protocol)

17

UDP(User Datagram Protocol)

41

IPv6

43

라우팅 헤더 옵션

44

분할 헤더 옵션

45

IDRP(Interdomain Routing Protocol)

46

RSVP(Resource Reservation Protocol)

50

ESP(Encapsulation Security Payload) 헤더

51

인증 헤더

58

ICMPv6

59

헤더 없음

60

목적지 옵션 헤더

134-254

미지정

255

예약된 부분

  1. 홉 제한(Hop Limit : 8 비트)
    1. 패킷이 경유할 수 있는 최대 라우터 홉 수를 나타냄
    2. 홉 제한 필드 값은 IPv4의 TTL 필드와 같이 라우터를 지날때마다 1씩 감소되어 0이 되면 패킷을 폐기하고 송신측으로 ICMP 메시지가 전달
    3. 임의의 값을 주어 패킷의 전송 범위를 제한할 수도 있음


* IPv4와 IPv6의 차이점(정리) *

IPv6에서는 헤드길이가 고정이므로 헤드길이 필드 없음

IPv6는 서비스 유형필드 없음, 우선순위와 흐름레이블 필드가 대신함

총 길이 필드가 없고 IPv6에서는 패이로드 길이가 있음

IPv4의 식별자, 플래그, 옵션 필드는 제거되고 IPv6에서는 단편화 확장 헤드에 포함된다.

IPv4에서의TTL은 IPv6에서 홉 제한 필드로 대체

IPv4에서의 체크 섬은 상위계층에서 제공하고 IPv6에서는 제외

IPv4에서의 옵션 필드는 IPv6의 확장 헤드로 구현됨



보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

:

Internet Protocol Version 6(IPv6) - 1st

구리구리 2008. 5. 28. 09:00

안녕하세요!!


구리구리의 네트워크 입니다

오늘은 인터넷 프로토콜 v6에 대해서 알아볼 텐데요

무선 인터넷 및 무선랜 그리고 홈 네트워킹 기술과 같은 다양한 유무선 통합기술의 등장으로 양적! 질적!성장을 지속하고 있습니다. 그러나… 인터넷 사용자의 급격한 증가로 인해 초창기 ip설계시 예측하지 못한 많은 문제점이 나타나고 있습니다. 주소 부족이라는 근본적인 한계는 아직 극복하지 못하고 있습니다… ㅠ_ㅠ

이를 극복하기 위해… IPv6가 나왔는데요…


한번 다같이 알아볼까요? ^^ GO!!!

IPv4의 문제점

● IP 설계시 예측하지 못한 많은 문제점 발생

   ◎ IP 주소 부족 문제

       ■ 클래스별 주소 분류 방식으로 인한 문제 가속화

       ■ 국가별로 보유한 IP 주소 개수의 불균형

       ■ 주소 부족 문제 해결을 위해 한정된 IP 주소를 다수의 호스트가 사용하는 NAT(Network
          Address Translation) 또는 DHCP(Dynamic Host Configuration Protocol) 방법 사용

       ■ IPv4의 근본적인 한계와 성능 저하 문제를 극복하지는 못함

   ◎ 유무선 인터넷을 이용한 다양한 단말기 및 서비스 등장

       ■ 효율적이고 안정적인 서비스 지원을 위해 네트워크 계층에서의 추가적인 기능이 요구

   ◎ 취약한 인터넷 보안

   ◎ 참고) NAT : 사설 IP와 공인 IP를 상호변환하는 주소 변환기


● IPv6의 등장

   ◎ 차세대 IP(IPng: Internet Protocol Next Generation)에 대한 연구가 IETF(Internet Engineering
      Task Force)에서 진행

   ◎ IPv6(IP version 6, RFC 2460)이 탄생

       ■ IPv6은 128 비트 주소 길이를 사용

       ■ 보안 문제, 라우팅 효율성 문제 제공(헤드의 간소화)

       ■ QoS(Quality of Service) 보장(Flow label 필드)

       ■ 무선 인터넷 지원과 같은 다양한 기능 제공(자동주소 설정 기능)

   ◎ IPv6로의 전환은 단계적으로 진행될 것으로 보임

       ■ 현재는 이동전화, 가전 제품 등에 IPv6 주소 도입이 추진되고 있으며 IPv6을 지원하는 운영
          체제 및 응용 프로그램 개발됨

       ■ IPv4 에서 v6의 진화 기간은 약 10년으로 추정


IPv6 특징

1) 확장된 주소 공간

   ◎ IP 주소 공간의 크기를 32 비트에서 128 비트로 증가

   ◎ 128 비트의 공간은 대략 3.4*1032만큼의 주소가 사용 가능

   ◎ 주소 부족 문제를 근본적으로 해결

   ◎ 주소 공간의 확장으로 인해 하나의 주소를 여러 계층으로 나누어 다양한 방법으로 사용 가능

       ■ 예) IPv4에서 멀티캐스트 주소는 단순히 그룹을 나타낼 뿐이지만 IPv6 멀티캐스트 주소는 그
           룹 주소뿐만 아니라 전송 범위까지 정의 가능

       ■ 멀티 캐스트 주소의 범위(scope)로 필드로 정의

2) 헤더 포맷의 단순화

   ◎ IPv4에서 자주 사용하지 않는 헤더 필드를 제거

   ◎ 추가적으로 필요한 기능은 확장 헤더를 사용하여 수행

   ◎ IPv6의 기본 헤더는 40 바이트로 고정 단순한 몇 개의 필드로만 구성

   ◎ 헤더 필드의 단순화는 라우터에서 헤더를 분석하는 부하의 감소와 패킷 처리 속도의 향상을 의
       미

   ◎ IPv6에서는 패킷 단편화를 지원하지 않기 때문에 패킷 단편화와 관련된 모든 필드들을 제거

   ◎ 체크섬 필드를 제거하여 매번 헤더 체크섬 필드를 다시 계산해야 하는 오버헤드를 줄임

3) 향상된 서비스의 지원

   ◎ 효과적으로 QoS 보장을 위해 플로우 레이블 필드를 이용하여 패킷을 분류

   ◎ 화상이나 음성과 같이 시간 지연에 민감한 데이터, 그리고 메일 전송과 같이 시간에 덜 민감한
       데이터 등을 특성에 맞게 분류 및 처리

4) 보안과 개인 보호에 대한 기능

   ◎ IPv4에는 보안 기능이 포함되어 있지 않기 때문에 IPSec (Internet Protocol Security)이라는 보
       안 관련 프로토콜을 별도 설치 필요 ->v6에서는 자체지원

   ◎ IPv6에서는 보안과 관련된 인증절차, 데이터 무결성 보호, 선택적인 메시지 발신자 확인기능 등
       을 프로토콜 차원에서 지원

   ◎ IPv6에서는 확장 헤더를 이용하여 종단간 암호화 기능을 지원하기 때문에 패킷에 대한 변조를
       방지

5) 자동 주소 설정

   ◎ 이동형 컴퓨터의 경우 이동후 재설정 없이 네트워킹 가능

   ◎ IPv6에서는 자동으로 로컬 IPv6 주소를 생성 가능

   ◎ 자동 주소 생성은 라우터가 제공하는 네트워크 프리픽스(prefix) 정보와 MAC(Media Access
       Control) 주소를 사용 – 신규 개발

   ◎ 상태 보존형 자동설정(Stateful auto-configuration)

       ■ DHCP 서버로부터 모든 네트워크 정보를 받는 방식

       ■ 호스트가 DHCP 서버에 주소를 요청하면 서버는 호스트에 할당 가능한 주소를 전달

       ■ 주소를 효율적으로 이용하고 인증과정을 통해 보안 유지가 가능하지만 서버에 대규모 데이
          터베이스를 갖추어야 하는 단점

   ◎ 비상태형 자동설정(Stateless auto-configuration)

       ■ 호스트는 자신의 인터페이스 정보와 라우터에서 얻은 네트워크 정보를 이용하여 자체적으
           로 IPv6 주소를 생성

       ■ 서버가 필요없는 장점이 있지만 권한이 없는 호스트의 액세스등으로 인한 보안 문제가 발생
           가능성


사용자 삽입 이미지
           기존 ipv4의 주소 화면
           기존에는 8비트씩 4부분 10진수로(2^3*4비트) 표현되어 지며, .(쩜) 으로 구분되어진다.

사용자 삽입 이미지
           ipv6의 주소화면
           16비트씩 8부분 16진수로(2^4*8비트)표현되며, :(콜론)으로 구분되어진다.

사용자 삽입 이미지
          ipconfig의 화면 예시
         

구분

IPv4

IPv6

주소 길이

32 비트

128 비트

표시 방법

8 비트씩 4부분으로 10진수 표시

16 비트씩 8부분으로 16진수로 표시

주소 개수

약 43억개

3.4*1032

주소할당 방식

클래스 단위의 비순차적 할당

네트워크 규모, 단말기 수에 따른 순차적 할당

브로드캐스트

있음

없음

헤더 크기

고정

가변(확장헤드)

QoS 제공

미흡

제공

보안

IPSec 프로토콜 별도 설치

IPSec 자체 지원

서비스 품질

제한적 품질 보장

확장된 품질 보장

Plug & Play

불가

자동 주소 구성 지원



이번 시간은 IPv6 의 개요 및 특징에 대해서 알아보았습니다

다음시간에는 IPv6의 패킷 구성 및 IPv6의 주소 표기법, 구성, 변환법 등에 대해서 알아보도록 할께요 ^^/

주소 표기법… 어떠한 것들이 바뀌었을까요? ^^ 



보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

:

IP address management

구리구리 2008. 5. 21. 09:00


안녕하세요 ^^/

구리구리 네트워크 시간입니다 !!

지난 시간에 IPv4에 대해서 알아보았는데요… 음~ IPv4의 패킷 구성에 대해서 머리에 확 들어왔다면.. 네트워크의 절반은 먹고 들어 가는거에요!!!

이번 시간에는 IP주소관리 기법에 대해서 알아보도록 하겠습니다
우리가 많이 사용하고 있는 IP들의 주소 체제 및 주소관리방식을 알아 볼 것입니다.
클래스별로 분류하고, 서브네팅 및 슈퍼네팅 등을 알아보도록 할께요…

Here we go! GOGOGO~

IP 주소 체제

  • IP 주소
    • 모든 장비들이 갖는 고유한 논리적 네트워크 식별자
  • 클래스별 분류
    • IP 주소는 네트워크를 구분하기 위한 네트워크 식별자(netid)와 네트워크 내에서 호스트를 구분하기 위한 호스트 식별자(hostid)로 구성
    • 네트워크와 호스트의 주소 개수에 따라 다섯 개의 클래스로 구분

클래스

설명

클래스 A

첫번째 비트가 '0' 인 클래스, 7비트가 네트워크 식별자

224 - 2 = 16,777,214 개의 호스트를 수용할 수 있기 때문에 큰 규모의 호스트를 갖는 기관에서 사용한다.

클래스 B

첫번째 비트가 '10' 인 클래스, 6+8 비트가 네트워크 식별자

216 - 2개의 호스트를 수용할 수 있다.

클래스 C

처음 세 비트의 값이 "110"인 주소를 클래스 C 주소라고 한다.

세 번째 바이트까지가 (5+8+8비트)네트워크 식별자이고 마지막 한 바이트는 호스트 식별자이다. 클래스 C 주소는 네트워크마다 254개까지 호스트를 수용할 수 있기 때문에 작은 규모의 네트워크에서 사용된다.

클래스 D

처음 네 비트의 값이 "1110"인 주소를 클래스 D 주소라고 한다. 클래스 D 주소는 네트워크 식별자와 호스트 식별자의 구분이 없고 전체 주소가 멀티캐스트용으로 사용된다.

클래스 E

처음 네 비트의 값이 "1111"인 주소를 클래스 E 주소라고 하며 추후 사용을 위해 예약된 주소이다.


 

  • Class A  1.0.0.0 ~ 127.255.255.255
  • Class B  128.0.0.0 ~ 191.255.255.255
  • Class C  192.0.0.0 ~ 223.255.255.255


 

  • 전송 방법에 따른 분류

전송방식

설명

유니캐스트(Unicast)

하나의 송신자가 하나의 수신자에게 패킷을 보내는 방식의 주소이다.

멀티캐스트(Multicast)

하나의 송신자가 다수의 수신자에게 패킷을 보내는 경우로 일대다 방식의 패킷 전송 주소이다. 멀티캐스트 전송을 수행하기 위해서는 네트워크 장치가 멀티캐스트를 지원해야 하며, 원하는 그룹에 가입되어 있어야 한다.

브로드캐스트(Broadcast)

송신자가 네트워크의 모든 호스트에게 패킷을 보내는 방식으로 브로드캐스트 주소에서는 호스트 식별자 필드를 모두 1로 설정한다.

예) 210.125.72.255


 

  • 특별한 IP 주소

네트워크

식별자

호스트

식별자

목적

송신

수신

(예)

네트워크

모두 0

네트워크 주소

불가

불가

210.125.72.0

네트워크

모두 1

직접적 브로드캐스트

불가

가능

210.125.72.255

모두 1

모두 1

제한적 브로드캐스트

불가

가능

255.255.255.255

모두 0

모두 0

네트워크의 한 호스트

가능

불가

0.0.0.0

127

관계 없음

루프백 주소

불가

가능

127.0.0.1


 

  • 네트워크 주소

                   네트워크 자체를 의미
                   라우팅 프로토콜에서 네트워크를 지칭할 때 사용
                   패킷의 송신지나 수신지 주소로써 사용 불가

  • 직접적 브로드캐스트

                   라우터가 네트워크의 모든 호스트로 패킷을 보낼 때 사용
                   수신 주소로만 사용

참조( 책 : TCP/IP 인터넷 )

  • 제한적 브로드캐스트

                  호스트가 네트워크에 있는 모든 호스트로 패킷을 보낼 때 사용
                  수신 주소로만 사용

참조( 책 : TCP/IP 인터넷 )

  • 네트워크의 한 호스트
    • 임의의 호스트를 지칭할 때 사용
    • 송신 주소로만 사용(자기의 주소로 송신가능)

                       참조( 책 : TCP/IP 인터넷 )


 

  • 루프백 주소
    • 주로 소프트웨어 테스트를 위해 사용
    • 물리 계층까지 전달되지 않고 다시 상위 계층으로 전달
    • 주로 127.0.0.1을 사용



 

IP 주소 관리 방식

  • IP 주소 낭비와 부족 현상 심화
    • 클래스별 분류 방식 이외의 IP 주소 관리 방법에 대한 필요성이 제기
  • 새로운 방법 도입
    • 낭비되는 IP를 줄이기 위해 서브네팅(Subnetting) 개념이 도입
    • 부족한 IP를 효율적으로 사용하기 위해 C 클래스 주소 몇 개를 합쳐 하나의 네트워크 주소로 관리할수 있는 슈퍼네팅(Supernetting)이 제안
    • 클래스를 구분하지 않는 주소 방식인 CIDR(Classless Inter-Domain Routing)이 제안


 

  • 서브네팅
    • 하나의 큰 네트워크를 몇 개의 작은 논리적인 네트워크로 분할하여 사용하는 방식
    • 서브네팅에서는 호스트 식별자를 다시 서브넷 식별자와 호스트 식별자로 세분화
    • 서브넷 마스킹(masking) : IP 주소로부터 서브넷 주소만을 식별할 수 있는 방법


 

  • 일반적인 Class C를 두 비트의 서브넷 마스크를 사용하여 구성하면 다음과 같음

서브네팅의 예

  • Class C인 203.252.53 네트워크를 할당받은 기관에서 6개의 서브 네트워크를 구성할 때
    • 서브넷의 id가 모두 0인 것과 1인 서브넷은 특수 주소로 제외
    • 총 8개의 서브넷 필요

  • 8개의 서브넷으로 나누므로 세 비트의 subnet id 사용
  • 6개의 서브넷에 할당되는 주소의 범위는 다음과 같음
  • 203.252.53.1에서 203.252.53. 31까지는 서브넷id =0
  • 203.252.53.224에서 203.252.53.255까지는 서브넷id =1 이므로 사용하지 않음
  • 할당된 주소범위에서 맨 왼쪽과 오른쪽은 각각 host id가 0과 1이므로 제외하고 할당
  • 6개의 네트워크에 각각 30대의 호스트를 할당함
  • 하나의 C 클래스에서는 하나의 네트워크로 254개
  • Subnetting을 하면 6개의 네트워크로 30개씩 구성
  • 즉, 203.252.53.32는 서브 네트워크의 이름이 됨
  • 즉, 203.252.53.63은 서브 네트워크의 브로드캐스트 주소가 됨


 

슈퍼네팅

  • Class A와 B 네트워크의 주소 공간이 고갈
  • 클래스 C 주소 사용으로 인터넷의 라우팅 테이블 규모 증대
  • C 클래스에서 사용할 수 있는 호스트의 수는 254개로 제한
  • 여러 개의 C 클래스 주소를 묶어 하나의 네트워크로 구성하는 슈퍼네팅을 사용
  • 네트워크 식별자 중 일부를 호스트 식별자로 사용하는 방법
  • 8개의 통합하는 클래스 주소를 통합하여 하나의 네트워크를 만들고 호스트 수는 3비트가 늘어난 11비트를 사용


 


 

추가 관리 기법

  • CIDR(Classless Inter-Domain Routing)
    • CIDR은 A, B, C 클래스별로 IP 주소를 구분하지 않고 네트워크 식별자 범위를 자유롭게 지정할 수 있도록 하여 IP 주소 운영의 융통성을 제공
    • 네트워크 주소를 자유롭게 설정할 수 있기 때문에 IP 주소의 낭비를 방지하고 효과적으로 네트워크를 구성
    • CIDR을 이용하면 도메인간의 라우팅에 사용되는 IP 주소를 매우 효과적으로 관리 가능
    • 예) 203.252.48.0/21 : 203.252.48.0 ~ 203.252.55.255까지 임
      48 = 00110/000, 55= 00110/111
  • IP 알리어스(IP Alias)
    • 하나의 NIC(Network Interface Card)에 여러 개의 IP 주소를 할당하는 방법

한 대의 서버에 여러 개의 IP 주소를 할당해야 할 경우 하나의 이더넷 카드에 여러 개의 IP 주소를 할당하여 운영할 수 있음




보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

:

IPv4(Internet Protocol v4) 패킷의 구성

구리구리 2008. 5. 14. 09:00

안녕하세요~? ^^


무척이나 긴 연휴가 끝나고 다시 일상 생활을 하게 되었는데요~ 빨리 적응 하셔야 할 것 같아요

지난 시간까지 인터넷 장비들에 대해서 간략하게 알아봤습니다…

이번 시간에는 인터넷 프로토콜 v4, 즉 IPv4에 대해서 알아보도록 할께요 ^^

IP의 특징 – 패킷 전송을 위한 주소관리/ 라우팅정보 입니다.

1. 비신뢰성(Unreliable)

  • 목적지까지의 정확한 전송을 보장 못함. 패킷을 목적지까지 전달하는 최선형 서비스(Best Effort Service)만 제공

2. 비접속형(Connectionless)

  • 연결(connection) 설정 없이 패킷을 전송하는 것을 의미
  • 동일한 송신지라도 서로 다른 경로로 패킷이 전송될 수 있음

3. 주소 지정

  • 네트워크 내의 노드를 고유하게 지정하기 위한 수단으로 IP 주소를 사용하며 IP를 기반으로 전달

경로 결정

  • 목적지 IP 주소를 기반으로 패킷 전달 경로를 판단


IP 패킷 구성에 대해 한번 볼까요?

1. 헤더 필드와 데이터 필드로 분리(PDU =PCI +SDU)

2. 헤더 필드에는 패킷을 목적지까지 전송하기 위한 값 포함

3. Big Endian Byte Ordering(헤드를 먼저 보냄)


버전

헤더길이

서비스타입

전체길이

식별자

플래그

단편화옵셋

TTL

프로토콜

헤더 체크섬

송신측 IP주소

수신측 IP주소

옵션(필요한 경우에만, 가변길이)

데이터

헤더 = 버전 ~ 수신측IP주소까지 부분(총 20Byte)

확장헤더 = 옵션 부분

데이터 = 데이터 부분


자… 간략하게 IP 패킷 구성을 표로 알아봤는데요…

그럼 각 부분의 패킷들은 어떠한 역할을 하며, 어떻게 구성되어있는지 자세히 알아보도록 하겠습니다


1. 버전(Version)

  • IP 프로토콜의 버전을 의미 (예) 현재는 4

2. 헤더 길이(Header Length)

  • 옵션 필드를 포함한 헤더의 총 길이
  • (예) 워드(4바이트)가 1단위, 따라서 20바이트 이면 5로 표시

3. 서비스 타입(Type-Of-Service)

  • 우선권(Precedence)필드(3비트), TOS(Type-Of-Service) 필드(4 비트), 예약 필드(1 비트)
  • 우선권 필드는 패킷의 우선순위 정의
  • TOS 필드는 최소 지연, 최대 처리량, 최대 신뢰성, 최소 비용을 나타내는 필드, 4비트 중 한비트만 1
  • 현재 인터넷에서 이 필드는 사용하지 않음

4. 전체 길이

  • 헤더와 데이터를 포함한 IP 패킷의 전체 길이를 바이트 단위
  • 16비트, IP 패킷의 최대 길이는 65535 바이트, 최소 20 바이트

5. 식별자(Identification)

  • MTU(최대 전송 단위) 보다 크면 패킷을 분할하여 전송
  • 동일한 데이터로부터 분할된 패킷을 재조립할 수 있도록 분할된 패킷들은 같은 식별자를 가짐

6. 플래그(Flags)

  • 단편화 여부, 단편의 조각이 첫번째 조각인지, 중간 혹은 마지막 조각인지를 구분함
  • 첫번째 비트 : 예약
  • 두번째 비트 : 단편화 금지(DF, Don't Fragment)
    ('1' 이면 단편화 하지 않음, '0' 이면 단편화)
  • 세번째 비트 : 추가 단편화 비트
    ('1' 이면 중간 단편, '0' 이면 마지막 단편이나 하나의 패킷)

7. 단편화 옵셋(Fragment Offset)

  • 패킷 재조립시 분할된 패킷간의 순서에 대한 정보 포함
  • 전체 데이터에서 분할된 패킷의 상대 위치를 8 바이트 단위로 기술
  • 즉, 데이터의 처음에서부터의 바이트 위치를 8로 나눈 정보



1. Time-To-Live(TTL)

  • TTL 필드는 패킷이 경유할 수 있는 최대 홉 수를 의미
  • 패킷이 라우터를 통과할 때마다 TTL 값은 1씩 감소
  • TTL 값이 0 이 되면 패킷은 폐기되고 송신측으로 ICMP 메시지가 전달

2. 프로토콜

  • 관련된 상위 프로토콜을 나타내기 위해 사용
  • ICMP : 1,TCP : 6, UDP : 17,

3. 헤더 체크섬(Header Checksum)

  • IP 패킷 헤더의 오류 발생을 검사하기 위한 필드
  • IP헤드를 16비트씩 더한 값의 보수 => 검사시는 모두 1인지 검사


금일은 IP와 IP패킷 구성에 대해서 알아 보았습니다 ^^


다음 시간에는 IP 주소를 어떻게 관리하는지, IP주소 체제에 해서해 알아보도록 하겠습니다

참~! IPv4를 했는데 IPv6가 궁금 하시다구요?

IP주소 체제를 알아본 후에…. IPv6에 대하여 알아보도록 하겠습니다 ^^


언제나 즐거운 하루 보내세요~ ^^ 파이팅~

보이세요?? 나는 지금도 여전히 도전하고 있습니다!!
Always Smile ^___________^

: