並び順

ブックマーク数

期間指定

  • から
  • まで

441 - 460 件 / 460件

新着順 人気順

TCPの検索結果441 - 460 件 / 460件

  • WebSocketを用いた一貫性のあるリアルタイム通信

    リアルタイム通信について 以前リアルタイム通信についてまとめた記事を執筆しました。この背景として、他ユーザの予約がリアルタイムに反映される予約管理アプリの開発があり、予約のトランザクションエラーを防ぐための一貫性を第一としたリアルタイム通信が必要でした。 しかし、PollingやLong Pollingによる通信はリクエスト間隔や更新間隔に依存するため、その間に他ユーザの予約が挟まるとトランザクションエラーを引き起こします。何より毎秒何件も予約が発生するようなアプリケーションではないことから、無駄なHTTP通信が発生するため負荷の面の課題が大きいです。 一方、SSEはchunkを用いるためコネクションは最低限で済みます。しかし、コネクションが一時的に切断された場合、その間のデータ更新を追う機能はプロトコルレベルではないため、SSEの再接続に対応するための実装コストが増えます。また、同様にH

      WebSocketを用いた一貫性のあるリアルタイム通信
    • 非公式ISUCON練習プラットフォームISUNARABEを公開した - Write and Run

      あなたの予想に反して、この記事の大半はタイトルとおおよそ関係のない感想文である。感情の発露に任せて書いているのであって、読ませるために書いているわけではないため、読みづらくても耐えて欲しい。 表題のとおり、非公式 ISUCON 練習プラットフォーム「ISUNARABE」をリリースした。 これは、ISUCON の素振り*1をより簡単にすることを目指して開発されたシステムで、近年の ISUCON 予選のポータルと似たような機能を持っている。 具体的には、過去問環境の CloudFormation テンプレートの自動生成・チーム編成・ベンチマーク実行・ベンチマーク結果確認などである。自動生成された CloudFormation テンプレートでスタックを作成すると、GitHub から取得したチームメイトの公開鍵が焼かれた状態のインスタンスが上がってくる、というあたりが重要なポイントだと個人的には思

        非公式ISUCON練習プラットフォームISUNARABEを公開した - Write and Run
      • バイナリを読み解いて学ぶDNSパケットの構造

        最近RustでDNSリゾルバを自作する記事を読んだので、勉強がてらGo言語で書き換えることにしました。 本記事ではまずDNSのプロトコルについてバイナリレベルで解説します。次回の記事でGo言語を使用して実際にDNSパケットのパーサーを作成します。 DNSとは DNSはドメイン名をIPアドレスに名前解決するために使用される通信プロトコルです。 通常、DNSパケットはUDPトランスポートを使用して送信され、512バイトに制限されています。 ただし、TCPで送信することも可能で、eDNSを仕様することでパケットサイズを拡張することもできます。 本記事では従来のUDPによるDNSパケットの送信について解説します。 UDPにおけるDNSパケットの最大長が512バイトである理由 IPv4の仕様では最小パケットサイズとして576バイトと定義されています。 この値は、64バイトのヘッダーと512バイトのデ

          バイナリを読み解いて学ぶDNSパケットの構造
        • kind (Kubernetes IN Docker) でクラスタ構築時に済ませておきたいポート設定の基本 - RAKUS Developers Blog | ラクス エンジニアブログ

          はじめに こんにちは!新卒1年目のTKDSです! 今回はkindで任意のポートをローカルマシンのポートにマッピングする方法を紹介します. 実際にkindでclusterを作成して動作確認をしながら進めます. はじめに kindとは default 設定でのCluster構築 Cluster作成 deploymentとNodePortの作成 kindの設定ファイルの作成 設定したポートにアクセスする まとめ kindとは コンテナを使用して,kubernetesクラスターを構築できるものです. githubのAboutには About Kubernetes IN Docker - local clusters for testing Kubernetes と書いてあるので,kindはKubernetes IN Dockerの略のようです. 先に結論から言うと,clusterの作成時に設定ファ

            kind (Kubernetes IN Docker) でクラスタ構築時に済ませておきたいポート設定の基本 - RAKUS Developers Blog | ラクス エンジニアブログ
          • 制御システムのドアノブ、ガチャガチャしてますか?[OTセキュリティ:インターネットへの疎通可否]

            セキュリティ対策したときに本当に有効なのかと自分で確認したことはありますか?ドアを施錠したらガチャガチャ確認するのに、セキュリティ対策した後ガチャガチャ確認しないのは不思議ではありませんか? もしあなたが制御システムに関わっている方であれば、セキュリティ対策の有効性について考えたことはありますか?例えばインターネットと疎通可能か自分で確認したことはありますか? はじめに ドアノブ、ガチャガチャしてますか? ドアを施錠したとき、ドアノブをガチャガチャして確認しますよね。これをセキュリティ診断の目線で考えると、攻撃者目線で侵入できるか確認していることにあたります。 FWなどサイバーセキュリティ対策(施錠)をしたとき、侵入できるか確認(ガチャガチャ)していますか?確認していないとしたらなぜでしょう?確認せずに不安じゃないですか? なぜガチャガチャしないのか? 「対策実施した人を信じている。」「サ

              制御システムのドアノブ、ガチャガチャしてますか?[OTセキュリティ:インターネットへの疎通可否]
            • wizSafe Security Signal 2024年2月 観測レポート

              本レポートでは、2024年2月中に発生した観測情報と事案についてまとめています。 目次 DDoS攻撃の観測情報 IIJマネージドセキュリティサービスの観測情報 Web/メールのマルウェア脅威の観測情報 セキュリティインシデントカレンダー DDoS攻撃の観測情報 本項では、IIJマネージドセキュリティサービスやバックボーンなどでIIJが対処したDDoS攻撃のうち、IIJ DDoSプロテクションサービスで検出した当月中の攻撃を取りまとめました。 攻撃の検出件数 以下に今回の対象期間で検出した、DDoS攻撃の検出件数を示します。 図-1 DDoS攻撃の検出件数(2024年2月) 今回の対象期間で検出したDDoS攻撃の総攻撃検出件数は284件であり、1日あたりの平均件数は9.79件でした。期間中に観測された最も規模の大きな攻撃では、最大で約690万ppsのパケットによって71.11Gbpsの通信が

                wizSafe Security Signal 2024年2月 観測レポート
              • RustでTestcontainers入門: テストコードから依存サービスを起動してテスト環境を作成する - kymmt

                この記事はRust Advent Calendar 2023 シリーズ1の4日目の記事です。 あるソフトウェアをテストするとき、そのソフトウェアがデータベースやメッセージブローカのような外部のサービスに依存する場合に、その依存をどのように扱うかという問題がつきまとう。この問題へのよくある解決策としては 依存サービスを差し替えられるような設計にして、テスト実行時はモックに差し替える Docker Composeなどであらかじめ依存サービスをテスト用のコンテナとして立ち上げておき、テスト実行時はそれらのサービスが動くコンテナにアクセスする などが挙げられる。 今回はさらに別の方法として、テスト実行時にテストコードの中から依存サービスをコンテナとして立ち上げるためのフレームワークであるTestcontainersを紹介する。また、RustでTestcontainersを使うときの実例を紹介する。

                  RustでTestcontainers入門: テストコードから依存サービスを起動してテスト環境を作成する - kymmt
                • osquery ですべての Linux コマンド操作を SQL 化する - Qiita

                  osquery とは osquery とは OS の情報取得を SQL を書くことで実現するためのコマンドラインツールです。 Facebook によって開発され、Windows, maxOS, Linux で使用可能です。 試した環境 CentOS 7 osquery 3.2.6 なぜ osquery を使うのか osquery を使うことで従来の Linux コマンドでは困難だった OS の情報取得を改善することができます。 それを理解するために、まずは従来の Linux コマンドを使う場合にどのような問題が生じるのかを見てみます。 例えば Linux 上で httpd という名前のプロセスを知りたい場合は pgrep コマンドが使えます。 $ pgrep -fla httpd 14071 /usr/sbin/httpd -k start 14072 /usr/sbin/httpd -k

                    osquery ですべての Linux コマンド操作を SQL 化する - Qiita
                  • GitHub - panjf2000/gnet: 🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。

                    gnet is an event-driven networking framework that is ultra-fast and lightweight. It is built from scratch by exploiting epoll and kqueue and it can achieve much higher performance with lower memory consumption than Go net in many specific scenarios. gnet and net don't share the same philosophy about network programming. Thus, building network applications with gnet can be significantly different f

                      GitHub - panjf2000/gnet: 🚀 gnet is a high-performance, lightweight, non-blocking, event-driven networking framework written in pure Go./ gnet 是一个高性能、轻量级、非阻塞的事件驱动 Go 网络框架。
                    • BlackHat USA 2023 / DEF CON 31 / BSides Las Vegasに会社の研修制度を使って参加してきました! - Flatt Security Blog

                      はじめに Flatt Security でエンジニアをしているAzaraとei01241です。 本ブログは、2023 年の 8 月初旬に開催された、BSides Las Vegas、BlackHat USA 2023、DEF CON 31 に弊社 2 名のエンジニアが参加した際の記録です。 はじめに 会社の研修制度を使って参加 前日談と滞在中の様子 事前準備 パスポートの準備 ホテル予約 航空券の予約 出発 → ラスベガス ラスベガスの前乗り 食と観光と困りごと 水が高い、物価も高い 美味しいものがいっぱい 体調を崩した 乾燥と鼻血 治安が悪い場所もある、ご注意を 観光 BSides Las Vegas 会場と設備 Talks BlackHat USA 2023 会場と設備 朝食や昼食、そしてコーヒーブレイク briefing Key note Smashing the state mac

                        BlackHat USA 2023 / DEF CON 31 / BSides Las Vegasに会社の研修制度を使って参加してきました! - Flatt Security Blog
                      • 【セキュリティ ニュース】「BIND 9」にアップデート - DoS脆弱性4件を修正(1ページ目 / 全1ページ):Security NEXT

                        Internet Systems Consortium(ISC)は、DNSサーバ「BIND 9」のアップデートをリリースした。脆弱性やバグの修正などを行っている。 「BIND 9.20.0」「同9.18.28」において、リモートより悪用が可能である4件の脆弱性に対処したことを明らかにしたもの。アドバイザリを公開した時点で、いずれも悪用は確認されていないという。 具体的には、TCP経由で悪意あるクライアントより多数のDNSメッセージを受信した際に動作が不安定となり、サービス拒否に陥るおそれがある「CVE-2024-0760」を修正。 同じホスト名に対して多数のリソースレコードを持つ権威DNSサーバやキャッシュDNSサーバにおいて、クエリの処理速度が約100倍遅くなるおそれがある「CVE-2024-1737」に対応した。 さらにDNSSECにおいて、「SIG(0)」署名が付いたリクエストを送信

                        • 通信プロトコル「UDP」はなぜ「TCP」より危ないのか?

                          関連キーワード サイバー攻撃 | セキュリティ | 脆弱性 動画といった“重たいコンテンツ”の通信に利用できる通信プロトコル「UDP」(User Datagram Protocol)はシンプルな仕組みである半面、脆弱(ぜいじゃく)な部分があり攻撃を受けやすいと考えられる。UDPを使う攻撃の手口にはどのようなものがあるのか。 「UDP」はなぜ「TCP」より危ないのか? 併せて読みたいお薦め記事 脆弱性を巡る注意点とは 新発見の脆弱性どころか「古い脆弱性」が危ない当然の理由 米CISAが「脆弱性カタログ」更新 政府機関“お墨付き”の危ない欠陥は UDPは通信相手の状況を確認せず、「データを送信するだけ」の通信プロトコルだ。受信する側にデータが確実に届いたかどうかを把握するための機能がない。こうしたシンプルな仕組みのため、動画や音声などリアルタイム性が求められるコンテンツの送信に向いている。一方

                            通信プロトコル「UDP」はなぜ「TCP」より危ないのか?
                          • ネットワークテストを自動化!NEEDLEWORKがスゴイ!

                            概要ネットワークのテストは大変。いろんなパターンのテスト用のトラフィックを生成しなければいけません。そのために、検証用の端末の接続をあれこれ変えたり、設定を変更したりなど面倒なものです。 NEEDLEWORKを利用すると、テスト用のトラフィックを思いのままに生成して、テストを自動的に実行できます。NEEDLEWORKの特徴と基本的な使い方をみてみましょう。 NEEDLEWORKとはNEEDLEWORK( https://www.ap-com.co.jp/ja/needlework/ )は、エーピーコミュニケーションズのテスト自動化ツールです。(エーピーコミュニケーションズさんといえば、Ciscoなどのネットワーク機器のカプセルトイという一部のユーザを強烈に惹きつける製品で話題になったことを覚えています) NEEDLEWORKで自動化できるテストは、以下の3つです。 ネットワーク通信テストF

                              ネットワークテストを自動化!NEEDLEWORKがスゴイ!
                            • 「Linux で動かしながら学ぶ TCP/IP ネットワーク入門」感想 - msksgm’s blog

                              概要 Linux で動かしながら学ぶ TCP/IP ネットワーク入門を読みました。 感想を書きます。 Linuxで動かしながら学ぶTCP/IPネットワーク入門 作者:もみじあめAmazon 概要 前提 目的 事前知識 読了時間 感想 次に関連で勉強すること まとめ 前提 目的 本書を読んだ背景は以下です。 2023年10月〜12月の目標の注力分野の 1 つにネットワーク・Linux を掲げていた SRE に関心があるので、ネットワーク周りの知見を深めたかった ネットワークの知識はほとんど初心者で、学んだ知識も読み物ベースだったので、手を動かしながら学べる内容を優先した 事前知識 ネットワークの知識は以下ぐらいです。普段は Web アプリケーションエンジニアとして勤務しているため、基本的な HTTP の知識は持っています。 [改訂新版]3 分間ネットワーク基礎講座を読んだ Real Worl

                                「Linux で動かしながら学ぶ TCP/IP ネットワーク入門」感想 - msksgm’s blog
                              • Recommended alarms - Amazon CloudWatch

                                The following sections list the metrics that we recommend that you set best practice alarms for. For each metric, the dimensions, alarm intent, recommended threshold, threshold justification, and the period length and number of datapoints is also displayed. Some metrics might appear twice in the list. This happens when different alarms are recommended for different combinations of dimensions of th

                                • 第217回 MySQL ShellでJavaScriptを使ってMySQLを操作してみよう[その2] | gihyo.jp

                                  今回は、前回(第216回 MySQL ShellでMySQLをJavaScriptを使って操作してみる)で紹介させていただいたMySQL Shellを使ってJavaScriptで操作する方法を、引き続き紹介したいと思います。 検証環境 今回はDockerで建てたMySQLを使用します。以下のコマンドでDockerを建ててローカルからアクセスをします。 % docker run --platform linux/x86_64 -p 127.0.0.1:3307:3306 -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_USER=kk2170 -e MYSQL_PASSWORD=my-secret-pw -d mysql:8.0.36 今回も前回や第214回と同様に、DockerのイメージにあるMySQL Shellを使用して接続をしていきます。まずは

                                    第217回 MySQL ShellでJavaScriptを使ってMySQLを操作してみよう[その2] | gihyo.jp
                                  • インクロフトを支える技術

                                    インクロフトというマンガ投稿サービスを作りました。読者と作者にとって使いやすく、投稿しやすいサービスにしていきます。 先の投稿でインクロフトを作った理由や実現したかったことを書いたのですが、この投稿ではそれらを実現するために選んだ技術構成と工夫した点について紹介していきます。 Cloudflare インクロフトの各種機能は全てCloudflare上で動いています。様々なサービスを使っていますが、総じて他のクラウドに比べてコストが安く、また安い理由も腑に落ちるのがよかったです。 Cloudflare Workers サーバーレスのアプリケーション基盤で、機能としてはGCPのCloud FunctionsやAWSのLambdaなどに近いですが、コールドスタートが爆速(0ms)なのとコストが他に比べて安いのが特徴です。 また、エッジで実行されるため地理的に近いサーバーのリソースを使うことができる

                                      インクロフトを支える技術
                                    • GoでMySQLを使ったテストを書くときにつかうユーティリティーライブラリを作った

                                      GoでMySQLを使ったテストを書く場合、MySQLのデータベースを初期化する処理や、使い終わったデータベースを削除する処理が必要になります。 毎回似たような処理を書いているので、そろそろライブラリとして切り出せそうだなと思って書いてみました。 shogo82148/go-mysql-pool 背景 弊社ではデータベースに関連したテストを書く場合、ローカルでMySQLを起動し、実際にMySQLへ接続する手法を取っています。 SQLの文法エラーを検知するには、実際にMySQLで処理するのが手っ取り早いからです。 この方法を採用する場合、次の問題は「いつMySQLのデータベースを初期化するか」です。 Goでは TestMain 関数を用意することで、テストの開始前の処理、テストの終了後の処理を書けます。 初期化しているコードは CREATE DATABASE するだけの単純なものです。 そんな

                                      • Building a faster, smarter, Chromebook experience with the best of Google technologies

                                        $200K 1 10th birthday 4 abusive ads 1 abusive notifications 2 accessibility 3 ad blockers 1 ad blocking 2 advanced capabilities 1 android 2 anti abuse 1 anti-deception 1 background periodic sync 1 badging 1 benchmarks 1 beta 83 better ads standards 1 billing 1 birthday 4 blink 2 browser 2 browser interoperability 1 bundles 1 capabilities 6 capable web 1 cds 1 cds18 2 cds2018 1 chrome 35 chrome 81

                                          Building a faster, smarter, Chromebook experience with the best of Google technologies
                                        • OCaml 5.1 と Eio で HTTPS クライアントを書く

                                          Eio とは Eio は、OCaml 5.0 から導入された effect handler を用いた非同期処理ライブラリです。つい先日 1.0 がリリースされ、いまアツいです(筆者調べ)。 Eio では既存の Lwt や Async と異なり処理結果が Lwt.t などの型でラップされないため、bind(>>=)や ppx_lwt の let%lwt x = ... のような記法を用いずに(direct style で)コードを書くことができるという特徴があります。例えば単純な例として、5 秒まってから "Hello world!" と出力するようなコードは、Lwt では以下のように >>= を使って書く必要がありますが: open Lwt.Infix Lwt_main.run ( Lwt_unix.sleep 5.0 >>= fun () -> Lwt_io.printf "Hello

                                            OCaml 5.1 と Eio で HTTPS クライアントを書く