IT
Network07 :: OSI 7 계층
Network07 :: OSI 7 계층
2020.09.26ㅡ. OSI 7 계층이 무엇인지? 네트워크 통신에서 일어나는 과정을 7 레이어로 나눈 것입니다. ㅡ. OSI 7 계층을 나누는 이유 흐름을 파악하기 쉽고, 사람들이 이해하기 쉬운 장점이 있습니다. ㅡ. 각 계층별 특징 1) 물리계층 대표적으로 케이블, 허브 등이 있습니다. 데이터를 전기적인 신호로 변환해서 주고받을 수 있는 기능을 수행합니다. 이는 데이터 전송 역할을 전기적신호를 이용하는것을 의미합니다. 데이터 전송 계층 : 단지 데이터 전달(0,1 비트열) 2) 데이터링크 계층 대표적으로 브릿지, 스위치가 있습니다. 여기서는 맥(Mac) 주소를 이용해서 통신하게 됩니다. 전송되는 단위는 프레임이라고 합니다. 물리계층에서 발생하는 오류를 찾아내고, 수정하는 역할을 진행합니다. 전반적으로 에러검출, 재전송..
C++STL11 :: map<key,value>
C++STL11 :: map<key,value>
2020.09.23C++에서 자주 사용되는 map에 대해 살펴보겠습니다. C++에서 maps은 container 로 구성되어 있습니다. set처럼 원소의 key가 컨테이너에 중복 저장될 수 없습니다. 이장에서는 map소개, 기본형태, 함수에 대해 확인해보도록 하겠습니다. map의 소개 map은 key와 value 쌍으로 갖고 있습니다. map의 기본 형태 map(key, value), key value 쌍으로 가지고 있습니다. map의 함수 insert() 함수가 있는데, key 와 value 쌍으로 저장합니다. EXAMPLE) #include //map 클래스는 map 헤더 파일을 include 하면 쉽게 사용할 수 있습니다. #include #include using namespace std; //이 코드에서는 ins..
알고리즘102 :: KAKAO_셔틀버스
알고리즘102 :: KAKAO_셔틀버스
2020.09.22몇번 읽고 문제가 잘 이해가 안되었습니다. ㅠ__ㅠ 그래서 몇 가지 검색해보다가 알게된 사실을 예제로 설명해 보겠습니다. example1) n=1, t=1, m=5, timetable=["08:00","08:01","08:02","08:03"] 셔틀은 09:00 부터 출발합니다. 셔틀은 1번 1분 간격으로 역에 도착하지만 한번에 5명을 태울 수 있으므로 08:00~08:03, (콘이 탈 시각 08:04) 모두 태울 수 있습니다. 따라서, example2) n=2, t=10, m=2, timetable=["09:10","09:09","08:00"] 마찬가지로 셔틀이 09:00 부터 출발하는것을 생각해보면 08:00 에 한명을 태웁니다. 셔틀이 총 2번 10분 간격으로 오기때문에 다음 올 셔틀은 09:10 ..
Linux04 :: 쉘 스크립트
Linux04 :: 쉘 스크립트
2020.09.22ㅡ. 쉘 스크립트 CentOS에서 기본적으로 사용하는 셸은 bash이다. 환경변수는 echo $환경변수이름 형식으로 명령을 실행해서 확인할 수 있다. 여기서 환경변수 값을 설정할때는 export 환경변수 = 값 형식으로 실행한다. 기본적으로 제공하는 환경변수 값들이 있고 그 외에는 printenv 명령을 통해 실행할 수 있습니다. 테스트를 위해서 name.sh 로 쉘 스크립트 파일을 하나 생성 여기서 실행 가능 속성을 추가해보면 만일, shell script를 다른 사용자에게서 사용하게 하고 싶다면 아래의 CLI를 사용하여 권한을 제공하고 실행시킬 수 있다. cp name.sh /usr/local/bin/ chmod 755 /usr/local/bin/name.sh //권한 755를 제공합니다. su - ..
알고리즘 100 :: 백준 순열과 조합(N과M 시리즈)
알고리즘 100 :: 백준 순열과 조합(N과M 시리즈)
2020.09.21ㅡ. N과M(1) : 순열 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 package backjun; import java.io.*; import java.util.*; public class BOJ_15649_N_M_1{ static int[] k; static boolean[] c; public static void main(String[] args) throws Exception{ // TODO Auto-generated method stub BufferedReader br = new BufferedReader(new InputStreamReader(System...
일상14 :: #1. teamgantt로 일정을 관리해보자.
일상14 :: #1. teamgantt로 일정을 관리해보자.
2020.09.16✓. teamgantt ? ㅡ. teamgantt는 공동의 작업을 함께 진행하는데 있어서 프로젝트 진행항목 및 일정에 대해 확인해볼 수 있는 도구 입니다. ✓. 사용방법 ㅡ. 사용방법은 굉장히 간단합니다. 기간을 설정할때는 7일을 넘기지 않는것이 좋습니다. 그 이후가면 관리가 흐지부지 해질 가능성이 있기때문에 ... ! ✓. 총평 ㅡ. 일정 관리 할때 정말 좋습니다. 특히, 그룹핑해서 관리하면 좋고 Days, Parent Group, Type을 지정해서 Details 정보들을 확인하면 좋습니다. ㅡ. 매일매일 관리하지 않으면 pre-warming 이 되지 않은 상태기 때문에 자칫 많은 시간을 뺏길 수 있습니다..
알고리즘 99 :: 2019 카카오 블라인드 코딩테스트 - 후보키
알고리즘 99 :: 2019 카카오 블라인드 코딩테스트 - 후보키
2020.09.072019 카카오 블라인드 코딩테스트 연습으로 풀어보았습니다. 유일성 : 한 컬럼에 대한 값이 유일하게 존재하는 것 최소성 : 유일성을 만족했음에도 다른 유일한 칼럼들을 추가해서 최소성을 깨뜨리면 안됩니다. e.g) 나이, 학년 조합으로 최소성을 만족할 수 있는데 학번이라는 칼럼을 가지고 와서 굳이 나이, 학년, 학번 으로 후보키를 만들필요가 없다는것입니다. 후보키 푸는 로직은 후보키를 만들 수 있는 조합 -> (생성된 후보키 그룹) 포함 관계 여부 -> 유일성 검사 이후 후보키 그룹에 포함으로 해결할 수 있습니다. ㅡ. 후보키를 만들 수 있는 조합 for(int i=1; i
Network05 :: 서브넷 마스크(2)
Network05 :: 서브넷 마스크(2)
2020.09.02ㅡ. 시작 서브넷은 서브넷 마스크로 만들어진 네트워크 입니다. 따라서, 서브넷 끼리는 라우터를 통해서만 통신이 가능합니다. 왜냐하면 하나의 네트워크 이기 때문입니다. e.g) 150.100.0.0, 클래스 B 네트워크가 존재할때 클래스 B의 디폴트 서브넷 마스크는 255.255.0.0 입니다. 여기서 네트워크 안에서 150.100.100.1과 150.100.200.1 은 같은 네트워크에 있습니다. 하나의 브로드캐스트 도메인에 있는 PC 입니다. 라우터 없이 통신이 가능합니다. 하지만, 여기서 255.255.255.0 서브넷 마스크를 이용해 서브네팅 해보면 네트워크부분이 달라지게 됩니다. 네트워크 부분이 세자리가 되어서 기존에 150.100.100 과 150.100.200 으로 나누어지게 됩니다. 서브넷 ..
Network04 :: 서브넷 마스크(1)
Network04 :: 서브넷 마스크(1)
2020.09.02ㅡ. 시작 서브넷 마스크는 가공을 통한 네트워크를 만들기 위해서 사용하는 마스크 입니다. IP주소를 자를때 서브넷 마스크를 사용합니다. 주어진 IP주소를 네트워크 환경에 맞춰 나누어 주기 위해서 사용하는 이진수의 조합입니다. ㅡ. 기본 주어진 클래스 C 클래스가 있을때 쪼개지 않고 사용하는 경우는 디폴트 서브넷 마스크 라고 합니다. 클래스 C 경우에는 디폴트 서브넷 마스크는 255.255.255.0 입니다. 클래스 B 경우에는 디폴트 서브넷 마스크는 255.255.0.0이고, 클래스 A 경우에는 디폴트 서브넷 마스크는 255.0.0.0 입니다. 서브넷 마스크라는것은 어디까지가 네트워크이고, 어디까지가 호스트 인지 나타내는 역할을 합니다. 서브넷 마스크만 보면 해당 IP주소의 네트워크와 호스트 부분을 나눌..
Network02 :: IP
Network02 :: IP
2020.09.02ㅡ. IP(1) IP는 서로 구분 되고 달라야 합니다. 지정 가능한 전체 IP 주소의 개수는 2의 32승 입니다.(=42억 9000개) 이진수 8자리마다 점을 찍는 과정을 거치는데 8개를 묶어서 옥텟 이라고 합니다. 그래서 IP주소는 총 4개의 옥텟으로 나뉩니다. 4개의 옥텟은 32비트 가 됩니다. ㅡ. 라우터에서 IP주소 이해하기 라우팅, 경로배정 이라고 합니다. 인터넷은 라우터와 연결되어있고 스위치로 각 디바이스에 IP분배 합니다. 인터넷과 라우터를 연결해주는 부분은 시리얼 인터페이스가 존재하고, 라우터와 스위치를 연결해주는 곳은 이더넷 인터페이스가 존재합니다. 라우터에 부여할 주여해야할 IP주소는 2개가 됩니다. (이더넷 인터페이스 부여할 주소, 시리얼 인터페이스 부여할 주소) 입니다. 이더넷은 내..
GCP31 :: Gsuit 정리 - 디지털 컨퍼런스를 들으면서...
GCP31 :: Gsuit 정리 - 디지털 컨퍼런스를 들으면서...
2020.09.01ㅡ. Pre-show Gsuit - 협업 업무 솔루션입니다. 20% 시간을 검색, 문서 찾는 할애 - 적합한 문서를 찾지 못하고 만든다고 합니다. 생산성을 굉장히 떨어뜨립니다. ㅡ. G Suite 을 통한 기업 업무 환경의 트랜스포메이션 주 52시간제 도입, 코비드 19 상황 기업의 비즈니스 성장에 주목하고 있다면 우리가 가장 접하고 있는 생산성 도구에 주목해야 합니다. Gsuit이 업무 생산성 향상에 많은 도움을 줄것입니다. 구글 클라우드 기반 협업 도구 = Gsuit, 협업에 필요한 모든 것(하나의 패키지입니다.) 소통 : Gmail, Calendar, 채팅, Meet 등 협업 : Docs, Sheets, Forms 등 보안과 관리 : Drive 등 어떻게? 변화를 혁신하는지? 1. 속도 향상, 구글..
GCP30 :: CloudSQL 데이터베이스에서 select 조회하는 Application 배포는Cloud RUN
GCP30 :: CloudSQL 데이터베이스에서 select 조회하는 Application 배포는Cloud RUN
2020.09.01ㅡ. 개요 CloudSQL에 데이터를 node.js서버에서 간단하게 불러오는 rest api application을 만들고 이를 Cloud Run을 이용해 배포하는 과정 ㅡ. 시작 프로젝트를 생성합니다. ㅡ. Cloud SQL 생성 cloud SQL 생성시 공개 IP 주소로 접근하였습니다. Terminal 환경에서 접속으로 Local에서 CloudSQL이 접근가능한지 확인하였습니다. ㅡ. Mysql Workbench 실행 워크벤치에서 Connection을 생성하고 데이터베이스, 테이블 생성 후 데이터를 insert 하였습니다. ㅡ. node.js 와 mysql 연동 2020/08/25 - [Node.js] - node.js restful api 서버 만들기 (with bigQuery) node.js re..