반응형

전체 글 408

[데통] ARP protocol 에 대해서

안녕하세요. BlockDMask입니다.오늘은 ARP 프로토콜에 대해 알아보겠습니다. > ARP 프로토콜 이란?ARP Protocol (Address Resolution Protocol - 주소 결정 프로토콜) - 네트워크 상에서 IP 주소를 물리적 네트워크 주소로 대응(bind) 시키기 위해 사용되는 프로토콜이다. 여기서 물리적 네트워크 주소는 이더넷의 48비트 네트워크 카드(NIC) 주소를 뜻한다. (위키백과) - TCP/IP 3계층(네트워크계층)의 IP Address 를 2계층(데이터링크계층)의 MAC address로 대응 시킬때 사용하는 프로토콜 입니다. - 내가 이해한 내용 : ARP 계층은 최종적으로 목적지에 데이터를 보낼 곳의 주소를 확인하는 프로토콜, 예를들어 우리가 "102호의 몇년생 김길..

[데통] CIDR - 사이더 (비클래스형 IP 주소할당방식)

안녕하세요. BlockDMask 입니다.IP 주소가 어떤식으로 우리에게 할당되는지여러가지 방법이 있지만 최근에 나온 비클래스형 IP 주소 할당 방식에 대해 알아보겠습니다. > IP 주소 할당 방식(CIDR)기존의 네트워크 클래스 방식 - 주소 공간을 A클래스, B클래스, C클래스, D클래스, E클래스 로 나누어 분류합니다. (subnetting - 기존 주소 블록을 나누는것) (supernetting - 작은 주소 블록을 여러 개 묶어서 하나의 큰 블록으로 사용) 비클래스형 주소할당 방식 (Classless Inter-Domain Routing, CIDR) - 사이더 : 클래스 없는 도메인 간의 라우팅 기법으로 1993년 도입되기 시작한 최신의 IP 주소 할당 방법 입니다. : 기존의 네트워크 클래스 방..

[백준 2622] 삼각형 만들기

안녕하세요. BlockDMask 입니다.오늘자 문제 풀어보겠습니다.오늘자 문제는 음..전체 탐색? 이긴한데 조건이 있는 전체 탐색 이었습니다.0. 제목백준 2622 삼각형 만들기BOJ 2622 삼각형 만들기TriangleTriangleTriangle1. 문제 설명같은 길이의 성냥개비가 여러개 주어집니다. 이것들을 평면에 늘어놓아서 삼각형을 만들려고 합니다. 삼각형의 한 변은 여러개의 성냥개비를 직선으로 이어서 만들 수 있지만, 성냥개비를 꺾거나 잘라서 변의 한 부분을 만들 수 는 없다.성냥개비 개수가 주어졌을때, 이들 성냥개비를 사용하여 만들 수 있는 서로 다른 삼각형의 개수를 구하는 프로그램을 작성하면 됩니다.예를들어 9개의 성냥개비로 만들 수 있는 서로 다른 삼각형은 아래 그림과 같이 3가지 입니다...

[데통] MAC address, IP address (맥주소와 아이피주소)

안녕하세요. BlockDMask 입니다.오늘은 Internet 주소체계 / MAC 주소와 IP 주소에 대해 알아보겠습니다. 1. MAC 주소 (Media Access Control Address)MAC 주소는 데이터 링크 계층(+물리 계층)에서 사용하는 네트워크 인터페이스에 (보통 NIC에) 할당된 고유 식별 주소, 고유 식별자. 이더넷 하드웨어 주소(Ethernet hardware address), 물리적 주소, 물리 주소, 하드웨어 주소(Hardware address) 라고도 불립니다. MAC 주소의 구체적인 소유자는 노드, 즉 인터페이스 입니다. 흔히들 말하는 MAC 주소는 네트워크 인터페이스 컨트롤러(NIC 카드)를 만든 회사에서 할당하여 하드웨어에 저장됩니다. 이는 다른 MAC 주소와 겹치지 않..

[데통] OSI 7계층과 TCP/IP 4계층, 계층별 데이터 단위

안녕하세요 BlockDMask 입니다.오늘은 OSI 7 계층과 TCP/IP 4계층에 대해 알아보겠습니다. > OSI 7 계층과 TCP/IP 4(5)계층관의 관계 **OSI 7 계층은 - [여기]서 자세히 설명이 되어있으므로 간략하게 언급하겠습니다.OSI 7계층의 구조 응용 계층(Application Layer) 표현 계층(Presentation Layer) 세션 계층(Session Layer) 전송 계층(Transport Layer) 네트워크 계층(Network Layer) 데이터 링크 계층(Data Link Layer) 물리계층(Physical Layer) TCP/IP 4계층의 구조 응용 계층 (Application Layer) 전송 계층 (Transport Layer) 인터넷 계층 (Internet ..

[C언어/C++] clock 함수를 통한 알고리즘 시간 측정

안녕하세요.BlockDMask 입니다.오늘은 "내가 짠 알고리즘이 어느정도 시간이 걸렸나?" 라는 것을 알 수 있게 시간을 잴 수 있는 코드에 대해서 알아보겠습니다. 1. clock() 함수C 언어 에서는 , C++ 에서는 헤더파일에 들어있습니다.기본형 clock_t clock(void); //프로그램이 시작하고 나서 부터 프로세서가 소모한 시간을 리턴합니다. return 타입인 clock_t는 clock ticks 를 뜻합니다.CLOCKS_PER_SEC는 메크로 인데 clock_t 의 값을 CLOCKS_PER_SEC으로 나누면 소모한 시간(clock ticks per second)이 나옵니다.2. 사용 방법123456789101112131415161718192021#include#include#incl..

퀵 정렬 (Quick Sort) 이론과 코드

안녕하세요. BlockDMask 입니다. 오늘은 지난시간에 언급 한 대로 퀵 정렬, 퀵 소트(Quick Sort)에 대해 알아보겠습니다.부족한 부분이나 이상한 부분이 있으면 댓글 부탁드리겠습니다. 0. 원리Quick sort(퀵 소트)는 divide and conquer (분할 정복) 방식으로 정렬을 수행합니다.Quick sort(퀵 소트)는 n 개의 데이터를 정렬할때, 평균적으로 O(nlogn) 번을 수행하고 최악의 경우 O(n^2) 번을 수행합니다.평균적으로 log 의 시간복잡도를 가지기 때문에 다른 정렬 알고리즘에 비해 속도가 빠르므로, 사용빈도가 높습니다. 과정 : 리스트에서 임의의 원소를 고릅니다. 그것을 pivot이라 합니다. (일반적으로 가운데 원소를 고릅니다.) : pivot의 앞에는 pi..

[백준 10818] 최소, 최대

안녕하세요. BlockDMask 입니다.팀 프로젝트를 하느라 정신이 없네요;;오늘자 문제 풀어보겠습니다.0. 제목백준 10818 최소, 최대BOJ 10818 최소, 최대1. 문제 설명 N 개의 정수가 주어집니다. 그 정수 중에서 최소값과 최대값을 구하여 출력하는 문제입니다. 첫째 줄에 정수의 개수 N (1 알고리즘(Solution) 입력받는 n의 수 만큼 반복문을 돌면서 새로 들어온 정수(tmp)와 최소값(ans_min)과 최대값(ans_max)을 비교합니다.? 연산자를 이용하여 비교하고 true : false 에 맞게 값이 변경 됩니다. > 출력(Output)형태에 맞게 출력합니다.최소값(ans_min)과 최대값(ans_max)를 출력합니다. 3. 소스코드 1234567891011121314151617..

[데통] 프로토콜(Protocol) 이란?

안녕하세요 BlockDMask 입니다.오늘은 "프로토콜(Protocol) 이란 무엇인가?" 에 대해 알아보겠습니다. > 프로토콜(Protocol)이란?정의 - 통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계이다. 통신 프로토콜은 신호 체계, 인증, 그리고 오류 감지 및 수정기능을 포함할 수 있다. (위키백과) - 통신 프로토콜은 통신(데이터를 주고 받는) 상호간에 미리 약속된 규칙, 규약입니다. - 송신자와 수신자 사이에 "데이터 구조는 이런식으로하고", "그건 이런의미이고", "속도는 어느정도로 보내고" 그런식으로 보내기로하자. 라고 약속을 한 것 입니다. - 비유를 하자면, 어디 기업에 내 이력서를 보낸다고 할때 메모장에 그냥 줄 글로 한자 ..

[백준 2566] 최댓값

안녕하세요. BlockDMask 입니다.중간고사가 곧 시작하는군요.. 그래도 오늘도 문제 달립니다.170905 문제 빼먹음 -> 171017 완료.0. 제목 백준 2566 최댓값 BOJ 2566 최댓값 1. 문제 설명 아래 그림과 같이 9x9 격자판에 쓰여진 81개의 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 행 몇 열에 위치한 수인지를 출력하는 프로그램을 작성하시오. 그림과 같이 최대 81개의 수가 주어질때, 이 중 최댓값은 90이고, 이 값은 5행 7열에 위치한다. -- 입력 : 첫째 줄부터 아홉 번째 줄까지 한 줄에 아홉 개씩 자연수가 주어진다. 주어지는 자연수는 100 보다 작다. -- 출력 : 첫째 줄에 최댓값을 출력하고, 둘째 줄에 최댓값이 위치한 행 번호와 열 번호를 빈칸을..

[백준 2501] 약수 구하기

안녕하세요. BlockDMask 입니다.오늘도 간단하게 전체 탐색법을 이용하여 약수를 구하는 문제를 풀어보았습니다.0. 제목백준 2501 약수 구하기BOJ 2501 약수 구하기1. 문제 설명 약수란어떤 자연수 a, b 가 있을때a를 b로 나누었을때 나머지가 0 이면 b는 a의 약수라 한다. 12 를 예로 들자면 12 / 1 = 12 ---> 012 / 2 = 6 ---> 012 / 3 = 4 ---> 012 / 4 = 3 ---> 012 / 5 = 2 ---> 212 / 6 = 2 ---> 012 / 7 = 1 ---> 512 / 8 = 1 ---> 412 / 9 = 1 ---> 312 / 10 = 1 ---> 212 / 11 = 1 ---> 112 / 12 = 1 ---> 0 12 의 약수는 1, 2,..

[데통] Wireshark (와이어샤크) 사용방법

1. 와이어샤크 화면 구성 - 와이어샤크 패킷을 캡쳐하게 되면 이렇게 화면이 나옵니다. 1번 영역은 - Packet List(패킷 리스트 영역) 입니다. : No - 패킷의 일련 번호를 표시합니다. (패킷 숫자를 알 수도 있음) : Time - 패킷 캡쳐를 시작하고 걸린 시간을 나타냅니다. : Source - 패킷의 출발지 주소 : Destination - 패킷의 목적지 주소 : Protocol - 프로토콜의 이름 : Length - 패킷의 길이(크기)를 bytes로 나타내줍니다. : Info - 와이어샤크가 스스로 분석하여 packet에서 가장 중요한 정보를 판단해서 보여줍니다.2번 영역은 - Packet Details(패킷 상세 영역) 입니다. : Packet List영역에서 패킷을 선택했을때, 선택..

[C++] sort algorithm 정리 및 예시

안녕하세요BlockDMask 입니다.오늘은 C++ STL 에서 제공하는 알고리즘 중에 sort 알고리즘에 대해 알아보겠습니다.0. sort algorithm sort 알고리즘은 헤더파일에 속해있습니다.sort(start, end)를 이용하여 [start, end) 의 범위에 있는 인자(element)를 오름차순(default)으로 정렬해주는 함수 입니다. start를 포함하고 end를 포함하지 않는 구간. (iterator를 생각하면됩니다.)quick sort(퀵 정렬)을 기반으로 함수가 구현되어있어, 평균 시간복잡도는 n log n 입니다. 따로 quick sort를 구현할 필요 없이 C++ STL에서 제공해주는 sort 함수를 이용하면 편리하게 정렬 할 수 있습니다.1. 원형 및 사용법원형templa..

[백준 9506] 약수들의 합

안녕하세요. BlockDMask 입니다.조금 간단한 문제를 풀어보았습니다.약수들의 합을 구하는 문제 입니다. 170907 문제 빼먹음 -> 171016 완료0. 제목백준 9506 약수들의 합BOJ 9506 약수들의 합1. 문제 설명 n의 범위가 (2 < n < 100,000)인 어떤 수 n에 대해 숫자 n이 자신을 제외한 약수들의 합으로 나타내어 지면, 그 수를 '완벽한 수'라고 한다. 예를 들으 6은 6 = 1 + 2+ 3 이므로 완벽한 수이다. n이 완벽한 수 인지 아닌지 판단해주는 프로그램을 작성하면 됩니다. -- 입력 --테스트 케이스마다 한 줄 간격으로 n 이 주어집니다. 입력이 마지막엔 -1 이 주어집니다. -- 출력 --테스트케이스 마다 한줄에 하나씩 출력해야합니다.n이 완벽한 수라면, n ..

[데통] Wireshark 란? (+설치방법)

1. wireshark 란? - 위키피디아 : Wireshark is a free and open source packet analyzer. It is used for network troubleshooting, analysis, software and communications protocol development, and education. - 와이어샤크는 network상의 packet을 분석해서 보여주는 무료 오픈 툴(tool)입니다. - packet을 분석하는 일은 wireshark가 하지만, packet을 포착(capture)하는 기능은 다른 도구(libpcap, WinPcap driver)가 진행 합니다. : 패킷 캡쳐 드라이버(WinPcap - 윈도우용, libpcap - 유닉스/리눅스용)가..

반응형