반응형

내 컴퓨터에 4091포트넘버를 사용하는 프로그램에서 다른 네트워크에 있는 80포트넘버를 사용하는 프로그램에게 메세지를 전송할때 수신해야할 컴퓨터의 MAC 주소 대신 라우터의 gateway 주소를 입력한다.

내 컴퓨터에서 보내는 메세지는

| M | 80 | 4091 | 2.2.2.11 | 1.1.1.3 | C | R1 |의 Frame을 만들어 라우터의 R1 gateway로 전달하고 전달 받은 라우터는 다시 이것을 R2포트를 통해 해당 컴퓨터에게 

| M | 80 | 4091 | 2.2.2.11 | 1.1.1.3 | R2 | S |의 Frame을 만들어서 전달하게 된다.

 

반응형

'Network' 카테고리의 다른 글

Net2 DNS 질의 과정  (0) 2022.10.24
Net1-2 라우터 메세지 전송 과정  (0) 2022.10.17
1-1 Net - ip, netmask, gateway 개념  (0) 2022.10.17
NAT를 사용하는 이유  (0) 2022.10.13
VLSM 네트워크 분할방법  (0) 2022.10.12
반응형

IP, netmask, gateway란?

 

IP가 있는 이유는 컴퓨터를 구별하는 역할 패킷을 주고받기위해 쓰이며 32비트로 만들어져 있다. IP주소에 같은 네트워크인지 알수있게 해주는 역할을 netmask가 해주고 IP와 netmask를 &연산 하여 동일 네트워크에 IP를 구분해 준다.

gateway는 나와 다른 네트워크 주소로 패킷을 보낼때 사용한다.

 

 

 

 

IP, netmask, gateway의 구조 이해

 

 ip는 컴퓨터를 구별하기 위한 주소로 네트워크 주소와 호스트 주소로 구성되어 있다. 예를 들어 ip주소가 199.199.199.10인 컴퓨터와 199.199.199.11인 컴퓨터가 있을때 앞의 199.199.199은 네트워크 주소로 같은 네트워크 에 있음을 나타내주고 끝자리 10 과 11은 호스트 주소로 컴퓨터를 구별해주는 역할을 한다. 이렇게 구별을 하기 위해서는 서브넷마스크가 꼭 필요한데 199.199.199.10와 199.199.199.11의 subnetmask는 255.255.255.0으로 같은 네트워크에 위치 했음을 나타내주고 네트워크 주소와 호스트 주소를 나누는 기준으로 쓰인다. ip주소는 32비트로 이루어져 있고 #.#.#.#의 한칸에 8비트씩 들어가 있는데 0~255까지 총 256개가 들어가 있다. 만약 ip주소가 199.199.199.0 ~ 199.199.199.255 / 255.255.255.0의 ip주소를 사용한다면 같은네트워크 주소를 가진 호스트가 256개가 있을 수 있다. 이런 내부 ip주소를 외부 ip주소와 통신을 할때는 gateway를 사용하는데 gateway는 완전히 서로 다른 네트워크 주소로 패킷을 보낼때 사용한다. 이 gateway는 브리지나 라우터에 있으며 내부 ip주소는 패킷을 gateway를 통해 라우터로 전달하고 라우터는 외부 ip주소로 패킷을 전달하는 역할을 한다.

 

반응형

'Network' 카테고리의 다른 글

Net1-2 라우터 메세지 전송 과정  (0) 2022.10.17
Router를 이용한 메세지 전송 과정  (0) 2022.10.17
NAT를 사용하는 이유  (0) 2022.10.13
VLSM 네트워크 분할방법  (0) 2022.10.12
브릿지의 기능  (0) 2022.10.11
반응형

변수는 $ 기호를 사용하고 변수명은 문자, 숫자,_만 사용하고 첫 글자는 반드시 문자로 시작한다. 변수명에 한글을 쓸 수 있지만 사용하지 않는다. 변수명은 대소문자를 구별한다 ( $abc, $ABC는 완저히 다른 변수이다.)

1 + 2 = 3

"1" , "2" = 12

$a = 1;                  ------------> 변수 마지막엔 반드시 ;

echo("\$a = $a");   ------------> 화면에 출력

 

PHP는 다음과 같이 다양한 데이터 타입의 변수를 지원한다.

스칼라 타입 : 정수(integer) , 실수(float, double) 문자열(string), 불린(bloolean)

다중 타입    : 배열(array) , 객체(object)

<?
$a = 1;
$b = "AA";
echo("\$a = $a <br>");
echo("\$b = $b");
$bo = TRUE;
$int = (integer)$bo; 
$str = (string)$bo;
echo(" \$int = $int<br>
 \$str = $str");
?>

 

 

인용 부호와 문자열

 

$a = "AA";
$b = 'AA';
echo("\$a = $a<br>
 \$b = $b");

 

\n      개행 문자(newline)
\r       개행 문자(carriage)
\t       탭 문자(horizontal tab)
\\       \ 문자
\$      $ 문자
\"      " 문자

 

<?
 $var1 = "1";
 $var1++;
 $var2 = "a";
 $var2++;
 $var3 = 10 + "11";
 $var4 = 10 + 1.2;
 $var5 = 10 + "1.1e2";
 $var6 = 10 + "A11";
 $var7 = 10 + "11A";
 echo("\$var1 = {$var1} <br>");
 echo("\$var2 = {$var2} <br>");
 echo("\$var3 = {$var3} <br>");
 echo("\$var4 = {$var4} <br>");
 echo("\$var5 = {$var5} <br>");
 echo("\$var6 = {$var6} <br>");
 echo("\$var7 = {$var7} <br>");
?>

 

산술 연산자

 

반응형
반응형

Network  Interface Card
유닉스 시스템들은 각 시스템마다 NIC를 지칭하는 디바이스 파일명이 고유하다.
리눅스의 경우 ens32, ens34(eth0, eth1)… 등의 이름으로 명명한다.
네트워크 관련 명령어 : net‐tools 패키지에 포함된
- CentOS7 Minimal 설치에 포함되어 있지 않음
# yum install –y net‐tools
 디바이스 파일
 /lib/modules/3.10.0‐693.el7.x86_64 /kernel/drivers/net
경로에 리눅스에서 지원하는 모든 네트워크 디바이스 파일이 존재한다.


ifconfig
네트워크 인터페이스 상태를 확인 하거나 설정을 변경한다.
 변경 내용은 영구적이지 않다.   
# ifconfig
# ifconfig [NIC명]
# ifconfig [NIC명]  [IP]  netmask [mask명] [up|down]

loopback 메모리내에 있음
예전에 마더보드에 랜카드가 없을때 운영체제에서 가상으로 랜카드를 만들어줌


네트워크 설정 파일
/etc/sysconfig/network‐scripts/ifcfg‐NIC명
‐> 네트워크 설정 : IP, subnetmask, gateway …
/etc/resolv.conf
‐> DNS Server
/etc/hostname
‐> 호스트명

추가 설정 파일
/etc/sysconfig/network
‐> 호스트명,  gateway, NOZEROCONF=yes


/etc/sysconfig/network‐scripts/ifcfg‐ens32

TYPE=Ethernet
BOOTPROTO=[static/dhcp/bootp/none]
DEVICE=nic명
UUID=UUID명
ONBOOT=[yes/no]
IPADDR=IP
PREFIX=Subnet Mask
GATEWAY=gateway 주소
DNS1=dns 서버 주소

/etc/resolv.conf
search [default 도메인명]
nameserver [DNS 서버 IP]
ifcfg‐ens32 파일과 다른 설정인 경우 재 부팅하면 ifcfg‐ens32 파일의 내용을 기준
으로 재구성된다.
named 서버 test시에 임시 설정은 이 파일을 이용한다.
 /etc/sysconfig/network
NOZEROCONF=yes
Zero Configuration Networking을 위하여 예약된 subnet 설정을 제거한다.
반드시 필요한 옵션은 아니다.

네트워크 재시작
# systemctl [stop | start | restart]  network
파일을 수정한 이후에는 반드시 네트워크를 재 시작 해야 한다.
NM(Network Manager)가 활성화 되어 있는 경우 설정은 반드시 NM을 이용한다.
CentOS6 이전 버전
# service network [stop | start | restart]

ping : 특정 호스트까지의 연결과 대상 시스템의 작동여부를 확인한다.
ping ip

netstat : 네트워크의 이름과 시스템의 연결상태, 포트, 인터페이스등의 상태와 통계정보를 확인해서 네트워
크 상태 진단하는 프로그램
# netstat [옵션]
옵션
‐i : 인터페이스 상태 확인
‐s : IP, ICMP, TCP, UDP 에 대한 패킷 통계정보
‐nr :  라우팅테이블 확인

NetworkManagerrk 실행 중일때 nmtui를 이용해서 네트워크 설정이 가능하다.
설정 전에 NetworkManager 서비스를 시작한다.
# systemctl start NetworkManager.service
[프로그램] – [시스템 도구] – [설정] – [네트워크] 메뉴에서 설정한다.
이전 버전에서는 system‐config‐network을 통해서 설정 가능했다.
변경 내용이 즉시 적용된다.
NM이 활성화된 경우 파일 편집이나 ifconfig 명령에 의한 설정 변경이 불가한 경우가
있다.

ntsysv : 부팅시에 서비스 실행을 켜고 끌 수 있다.

라우터
netstat
시스템의 연결상태, 포트, 인터페이스등의 상태와 통계정보를 확인해서 네트워
크 상태 진단하는 프로그램
# netstat [옵션]
옵션
‐i : 인터페이스 상태 확인
‐s : IP, ICMP, TCP, UDP 에 대한 패킷 통계정보
‐nr :  라우팅테이블 확인


Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.10.1    0.0.0.0         UG        0 0          0 ens32
= 모든 ip는 gateway에 보내라
192.168.10.0    0.0.0.0         255.255.255.0   U         0 0          0 ens32
= 같은 네트워상에 있는 컴퓨터는 ens32로 보내라

반응형
반응형

명령어

# ifconfig 를 사용하여 이더넷의 이름이 ens32이고 어떤 ip주소를 사용하고 있는지 확인한다.

명령어

# systemctl start NetworkManager.service

# nmtui 를 사용하여 NetworkManager를 실행한다.

실행된 NetworkManager에서 연결 편집 ->  이더넷 ens32를 편집을 눌러 준다.

 

이더넷 IPv4 설정에서 ip 주소를 192.168.10.81 에서 192.168.10.85로 변경해주고 OK를 눌러준다.

 

 

NetwoerkManager 를 종료해주고 명령어

# systemctl restart network 입력해주고 종료한다.

 

 

 

PuTTY를 실행하여 변경한 ip주소를 적어주고 실행한다.

 

명령어

#ifconfig 로  ens32의 inet ip주소 끝자리가 81에서 85로 변경된 것을 확인 할 수있다.

반응형
반응형

NAT 보안상 효과가 좋으며 운영하는 방법이 편리하고 운영비 가 적게든다.
내부에서 접속할 방법을 설정해주지 않으면 외부에서 접속하기 가 어렵고

ip어드레스를 급격하게 줄일수있다.
사설ip 원래는 보안때문에 사용 했으며 ip부족현상을 손쉽게 해결할수있다.

아이피주소 1개만 할당  //// 121장
인터넷 -> 공유기(할당받은 1개의 ip주소(리얼ip)) ->
공유기 내부 ip(게이트웨이) -> pc들 (사설ip)

공유기 외부ip주소로 들어온 데이터를
한대의 컴퓨터 ip주소로만 전송하게 가능하다. -> 슈퍼디엠제트설정


dns 네임서버  엔지니어면 네임서버를 만들어 써야한다.

반응형
반응형

VLSM

네트워크 분할방법

 

2개로 나눌때

1.1.1.0~1.1.1.255     00000000~1111111
255.255.255.0         00000000
255.255.255.128      10000000 (128) 네트워크를 2개로 쪼개겠다

 0 (0000000~1111111) -> 00000000~01111111 : 0~127
1.1.1.0~1.1.1.127
network id : 1.1.1.0
broadcast id : 1.1.1.127
 1 (0000000~1111111) -> 10000000~11111111 : 128~255
1.1.1.128~1.1.1.255
network id : 1.1.1.128
broadcast id : 1.1.1.255


4개로 나눌때
1.1.1.0~1.1.1.255 0000000~11111111
255.255.255.0     0000000
255.255.255.192  1100000

00(000000~111111) : 00000000~00111111 : 0~63 
01(000000~111111) : 01000000~01111111 : 64~127
10(000000~111111) : 10000000~10111111 : 128~191
11(000000~111111) : 11000000~11111111 : 192~255

1.1.1.0~1.1.1.63      64이나 실질적으로 쓸 수 있는 개수는 62개이다.
1.1.1.64~1.1.1.127   
1.1.1.128~1.1.1.191
1.1.1.192~1.1.1.255
 
8개로 나눌때
1.1.1.0 ~ 1.1.1.255 00000000~11111111
255.255.255.0       00000000
255.255.255.224    11100000

000 (00000 ~ 11111) : 0~ 31
001 (00000 ~ 11111) : 32 ~63
010 (00000 ~ 11111) : 64 ~ 95
011 (00000 ~ 11111) : 96 ~ 127
100 (00000 ~ 11111) : 128 ~ 159
101 (00000 ~ 11111) : 160 ~ 191
110 (00000 ~ 11111) : 192 ~ 223
111 (00000 ~ 11111) : 224 ~ 255

넷마스크 : 255.255.255.224
1.1.1.0 ~ 1.1.1.31
network id : 1.1.1.0
broadcast id : 1.1.1.31

1.1.1.32 ~ 1.1.1.63
network id : 1.1.1.32
broadcast id : 1.1.1.63

1.1.1.64 ~ 1.1.1.95
network id : 1.1.1.64
broadcast id : 1.1.1.95

1.1.1.96 ~ 1.1.1.127
network id : 1.1.1.96
broadcast id : 1.1.1.127

1.1.1.128 ~ 1.1.1.159
network id : 1.1.1.128
broadcast id : 1.1.1.159

1.1.1.160 ~ 1.1.1.191
network id : 1.1.1.160
broadcast id : 1.1.1.191

1.1.1.192 ~ 1.1.1.223
network id : 1.1.1.192
broadcast id : 1.1.1.223

1.1.1.224 ~ 1.1.1.255
network id : 1.1.1.225
broadcast id : 1.1.1.255
 

네트워크를 3개로 분할시 큰거 먼저 분할

A 1.1.1.0      ~ 1.1.1.127 : 255.255.255.128
B 1.1.1.128  ~ 1.1.1.191 : 255.255.255.192 
C 1.1.1.192  ~ 1.1.1.255 : 255.255.255.192

 

 

 

반응형
반응형

 

 

 

O을 node라고하고 연결된 선을 엣지라고 한다.

 

 

 

패킷 : 통신 , 서킷 : 방송

- 옛날에는 구분이 되었으나 현재는 인터넷 사업자가 방송사업도 하여 구분이 안됨

 

패킷의 특징 : 보내는 데이터 안에 누가 보내고 누가 받는지 정보가 들어있다.

(세그먼트, 데이타그램, 프레임 등)

 

패킷의 종류

unicast : 1:1통신, 받는 쪽을 기준으로 하고 Sender(src)와 destination(dst)주소가 특정 node나 host의 주소
인 경우

broadcast : 1:N 통신, dst 주소가 불특정 다수인 패킷 FF:FF:FF:FF:FF:FF, IP 마지막 주소 등의 경우

multicast : 1:N 통신, 대상이 미리 지정한 그룹인 경우

 

Ethernet : bus형의 대표적인 형식, Link layer에 해당하며 CSMA/CD방식

성능 : 일정 수준 이상으로 node가 증하하면 각 node가 사용가능한 대역폭이 줄어든다.

 

Total packets : 정상적 패킷의 양 / of node : 컴퓨터 대수

A와 B는 패킷의 양이 같고 컴퓨터 대수가 다르다 그러나 A 지점에서 완만하게 오르는 이유는 패킷의 양이 그만큼  여유가 있는 것이고 B 지점에서 급격하게 하락하는 이뉴는 콜리전발생이 급격하게 발생해서 그렇다.

해결방법으로는 토탈패킷의 양을 늘리거나 네트워크 장비 규격을 바꿔 장비를 늘리면 되는데 복잡하고 비용이 많이 드는 단점이 있다. 그래서 네트워크를 분할해 주어야 하는데 리피터,브릿지, 라우터 방법을 이용한다.

 

리피터 : 신호를 증폭하는 physical 장치 현재엔 거의 사용을 하지 않는다.

 

브릿지는 Mac address 기반으로 Learning, Filtering, Fowarding, flooding, aging의 5가지 기능이 있다.

A가 B에게 데이터를 전송할때 Multiple Access로 B 뿐만아니라 1번포트를 통해 브릿지에게 전달이 되고 A의 맥어드레스를 보고 A의 위치를 브릿지 테이블에 저장하는데 이것을 Learning이라고 한다. 이때 브릿지는 A가 보내는 것을 알지만 B의 위치를 알지 못하여 2번 포트로 D,E,F PC에게 데이터를 보내게 되는데 이것을 Flooding 이라 한다. B가 A에게 데이터를 전송한다면 마찬가지로 1번포트를 통해 브릿지에게 데이터가 전달된다. 브릿지는 B의 맥어드레스를 보고 B가 1번포트에 위치했다는 것을 알고 A에게 데이터를 전송하는 것을 알면 다른 포트로는 데이터를 보내지않는데 이것을 Filtering이라고 한다. A,B,C,D,E,F의 맥어드레스 주소가 브릿지 테이블에 입력되있는 상태에서 A에서 E에게 데이터를 전송한다면 브릿지는 1번포트로 A에게 데이터를 받아 2번포트를 통해 E에게 정확하게 보내는데 이것을 Forwarding이라고 한다.

 

맥어드레스 = node / ip = host 이며 넷마스크는 ip주소를 구분해 준다. ip는 나와 네트워크 주소가 같은 것 끼리 통신하며 다르면 통신하지 않는다. 자신과 다른 네트어크 주소를 갖는 호스트에 패킷을 보내는 경우 이를 대신해주는 시스템 즉 외부와 연결된 시스템이 필요한데 이를 게이트웨이라고 한다. 게이트웨이역할은 라우터나 공유기가 담당한다.

 

ip는 아무렇게나 쓰는게 아닌 최상위 기관이 할당받을 기관에게 규모에 맞게 나눠서 주는 방법을 쓰고 있다.

주소마다 클래스로 나누는데

a 클래스 : 0.0.0.0 ~ 127.255.255.255
 128개(126개), 0~, 127~ 는 할당안해줌

             1.0.0.0 ~ 1.255.255.255.255
              256^3개

b 클래스 : 128.0.0 ~191.255.255.255
               64*256개

            130.23.0.0 ~ 130.23.255.255
             ->256^2개

c 클래스 : 192.0.0 ~ 223.255.255.255
               32*256^2개

             203.248.252.0 ~ 203.248.252.255
           -> 256개 

경기도 파주시 문향로 11 520동  5230호
-----------------------------------------     -------
           동네주소                          집주소

00000000.00000000.00000000   00000000
------------------------------------------    ----------
         네트워크 주소                      호스트주소

 

1.1.1.0 

Netmask는 IP 32bit중에 1로 마킹된 부분까지 네트워크 주소임을
의미한다. 넷마스크를 적어야 ip 어드레스로 의미가 있다.


210.113.29.0 ~ 210.113.29.255
29.1.0.0 ~ 29.1.255.255
2.0.0.0 ~ 2.255.255.255
10.35.0.0 ~ 10.35.255.255
110.194.0.0 ~ 110.194.255.255
9.213.229.0 ~ 9.213.229.255
8.0.0.0 ~  8.255.255.255
190.13.48.0 ~ 190.13.48.255

 

 

반응형
반응형

리눅스 명령어

ln : link 파일 생성 (soft , hard)
# ln [옵션] 원본파일 링크파일
옵션 -s : 소프트 링크 생성 (디렉토리의 경우 soft link만 가능)
      -f : 대상이 존재하는 경우 지우고 link파일 생성
ex) # ln -s a.txt b.txt
소프트링크 파일의 경우 원본파일이 지워지면 사용할 수 없는 파일이 된다.
하드파일의 경우 원본파일이 지워져도 사용이 가능하다.

명령어 ln

원본파일을 삭제하여 링크파일의 경우 빨갛게 표시가 된다.

more(less) : 화면 출력을 화면 단위로 제어, 출력되는 내용이 많아서 화면을 넘어가는 경우 사용
# more 파일
| : 앞 명령의 결과를 뒤 명령의 입력 값으로 이용
# ls -al | more
grep : 필터링, 출력 문자열중에 원하는 단어나 글자가 들어있는 라인만 출력하고자 할때 이용
command | grep
ex) ls -al | grep conf

명령어 grep


head, tail : 파일의 일부분을 출력, 각각 앞 뒤에서 10 라인씩 출력
옵션 -n ## : 지정한 라인만큼 출력
      -c ## : 지정한 byte 만큼 출력
      -f      : tail에서만 사용, 실시간 추가되는 내용도 출력 주로 log 정보 확인 시 사용 함

명령어 head, tail



find : 파일 시스템에서 조건에 만족하는 파일을 검색한다.
#finb 검색경로 검색조건1 검색조건2...
-name : 파일명으로 검색(와일드카드문자 사용)
-perm : 특정 퍼미션을 가진 파일 검색
-empty : 크기가 0인 파일 검색
find 명령 에러
find: paths must precede expression:.....
-name 옵션 사용시 문자열을 인식하지 못하는 에러이다. 이런 경우 문자열에 ' '를 추가한다.
find / -name *.txt -------> find / -name '*.txt'

명령어 find와 검색조건


vi 에디터

vi 실행
vi 에디터는 반드시 파일명을 추가해서 실행한다.
# vi 파일명
 vi의 모드
Windows용 에디터와는 달리 에디팅하는 모드와 이를 편집하는 모드가 다르다.
‐ 명령모드 : 입력이 외의 편집작업
‐ 입력 모드 : 데이터 입력 및 수정
‐ 실행 모드 : 파일 저장, 종료

명령 모드에서 삽입 모드로 변경
i : 커서 위치부터 입력
a : 커서 다음 칸에 입력
o : 커서 아래 새로운 라인을 삽입하고 입력

I : 커서가 위치한 라인 맨 앞에 입력
A : 커서가 위치한 라인 맨 뒤에 입력

명령 모드에서 실행 모드로 변경
 :
삽입, 실행 모드에서 명령모드로 변경
[ESC]
삽입 모드에서 실행 모드로 직접 변경은 불가능하다.

이동
h, j, k, l (왼쪽,아래,위,오른쪽)
gg, G (문서 맨 처음이나 아래로)
nG (n 라인으로 이동)
^f, ^b, ^d, ^u  (화면단위 이동)
삭제
x (글자 삭제)
dd (라인 삭제)
dw (단어삭제)
D (커서뒷부분 삭제)

검색
/문자열
n (검색상태에서 순방향으로 재 검색, /와 동일)
N
환경 설정
:set  [환경변수]  [값]
환경변수
nu (라인번호 표시)
sm (반대 괄호 표시)

:wq (저장 후 종료 )
:q! (저장하지 않고 종료 )
:w [파일명]  (저장 또는 지정한 파일명으로 내용저장)
‐ 새 이름으로 저장하는 방법은 Windows와 다름으로 주의한다.
익숙하지 않은 사용자의 경우 가능한 사용하지 않는 것이 좋다.

vi 쉽게 표현한 그림

 

 

반응형
반응형

 VMware에 만든 리눅스를 사용하기 위해 기초적인 리눅스 명령어를 배웠다. 명령어를 배우기 앞서 강사님께서는 네트워크 구조에 대해 자세하면서도 쉽게 알려주셨다. 지난 시간에 사용한 파일 질라 같은 프로그램들을 Ftp프로그램이라 부르고 서버와 클라이언트에 대해 이해를 할 수 있었다. 서버는 종업원이라는 뜻으로 서비스를 제공하며 클라이언트는 고객으로 이 서비스를 제공받는 자로 이해를 할 수 있었다.

프로그램에서 서버로 메세지가 전달되는 과정

 

 프로그램은 메세지라는 데이터를 TCP로 보내고 TCP에서는 그 메시지에 보내는 프로그램의 포트 넘버와 받을 프로그램의 포트 넘버를 붙여 Segmant를 만들어 IP에게 전달하고 전달받은 IP는 Segment에 보내는 아이피 주소와 받는 아이피 주소를 붙여 Datagram을 만들고 이더넷에 보낸다. 전달받은 것을 보내는 이더넷의 번호와 받는 이더넷의 번호를 붙여 Frame을 만들어 받아야 할 이더넷에게 전달한다. 수신받은 이더넷은 Frame을 보고 자신의 MAC주소와 비교한뒤 자신에게 보낸게 맞으면 IP에게 Datagram을 전달하고 IP에서도 누가 보낸 거며 자신에게 보낸 것인지 확인하고 맞으면 Segment를 TCP에게 전달하고 TCP에서는 포트 넘버를 확인하고 수신받아야 할 프로그램이 있으면 그 프로그램에게 최종적인 '메시지'를 전달한다.

 레이어들 간에는 데이터 주고 받기만 가능하고 책임 추정성으로 누가 잘못했는지 명확하게 구분이 가능하다고 한다. 애플리케이션(프로그램)이 TCP에게 전달하고 더 이상은 관여하지 않고 각 레이어마다 할 일만 하고 관여는 하지 않는다. 트랜스포트는 데이터가 안전하게 전달하게 해주며(데이터가 손상되었는지 확인하고 보내줌) 네트워크는 컴퓨터가 가지고있는 주소를 써줌 패킷을 만들어서 이더넷에 주고 링크는 데이터를 주고받는다.

 

 대표적으로 가장 많이 사용되는 패킷망 네트워크는 Bus형으로 복잡한 장비 없이도 구성되며 가성비가 매우 우수하다. 이것을 Ethernet이라 고 한다.

그밖에 star형, ring형등이 있는데 start형은 비싸며 전화국에서 사용 atm 등으로 사용하고 ring형은 데이터 진행방향 정해져 있어 군대나 대단위 병원 등에서 사용이 된다.

 

CSMA/CD ( Carrier Sense Multiple Access with Collision Detect)

CSMA/CD의 데이터 전송방식

Carrier Sense : 네트워크에 흘러가는 정상패킷 흘러가는 데이터가 있는지 확인
Multiple Access : 누구한테 가는지 통제하지 않는다
Collision Detect : 깨진데이터 ( 전송했는데 다른 쪽에서도 전송을 해버려서 데이터가 깨짐 )

 

 CSMA/CD는 데이터가 오고가는 회선이 1차선인데 어느 곳에서도 데이터가 이동하지 않은 상태에서 데이터를 전송해야 원활하게 PC간 데이터 전송이 가능하지만 어느 한 곳에서 데이터를 보낼 때 다른 곳에서도 데이터를 보낸다면 데이터끼리 손상이 나는 것을 방지하기 위해 Carrier Sense를 하고 그 데이터는 어떤 PC에게 가는지 통제를 하지 않는다. 데이터에는 개인 PC의 IP주소를 담고 있어서 자신에게 보낸 데이터가 아니면 바로 버려버리기 때문에 이 방식을 쓴다.

예로 100메가바이트의 네트워크를 쓰는 방에 PC가 10대가 있으면 10대가 균등하게 10메가바이트씩 쓰는게 아니라 동시에 사용할수록 대역폭이 줄어 점점 속도가 느려진다고 한다. 전날 파일 질라에 올려둔 파일을 모든 학생들이 받으려고 했을 때 느려진 것을 예로 들 수가 있었다.

 

반응형

'Network' 카테고리의 다른 글

Router를 이용한 메세지 전송 과정  (0) 2022.10.17
1-1 Net - ip, netmask, gateway 개념  (0) 2022.10.17
NAT를 사용하는 이유  (0) 2022.10.13
VLSM 네트워크 분할방법  (0) 2022.10.12
브릿지의 기능  (0) 2022.10.11

+ Recent posts