クレアチニン

この前の血液検査で、クレアチニンが17を超えてしまった。
透析のクリニックにあるダイアライザーでは間に合わなくなったので、特注のダイアライザーを使うことに。

リンは少し下がって来たけど、それでもあまり安心は出来ないし、カリウムは相変わらず高いし、、。

何より、透析後にすごく疲れるようになってしまった。

こんなんで大丈夫なのか、先が心配、、。

UDPとTCPと

UDPソケットプログラミングをしていて、ちょっといろいろとはまってしまったので、
それについてまとめてみました。

普通、ネットワークについて勉強していると、トランスポート層の例としてUDPTCP
が出てきて、

TCP コネクション型
UDP コネクションレス

って習いますよね。例えば、
https://www.itbook.info/study/tcp3.html
で解説されているような感じ。

だから、TCPはコネクションを張ってから安全にストリームをやりとり、UDPはコネクションを
用いずいきなりデータグラムを飛ばす、、というイメージ。


ところが、UDPのライブラリを見ると、必ず「connect」というメソッドが出てきます。あれ?
UDPってコネクションレスなのに、どうしてconnect?

Stackoverflowとかで、UDPのコネクションについての質問とかみると、よく「UDPコネクションレスだ。
お前の言っているコネクションの定義は?」みたいなコメントがついているけど、、、、

というか、調べると普通に載っていて、例えば
http://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/udpconnections.html

な〜んだ、コネクションあるじゃん、、。



とはいえ。
それでもUDPではコネクションを使うのは一般的ではないらしい。そして、上のサイトにもあるように、
UDPコネクションは、スレートレスなコネクションであって、「接続の確立」「クローズ」といったものも
ないようだ。



じゃあ意味ないの?



いや、すごい大切な意味があるのです。(たぶん)


というのも、UDPは、データグラムを送りっぱなしの仕組みなので、そもそもデータを受け取る相手が
本当にいるのかどうかよくわからないプロトコルです。

データを受け取る側の実装がよく分かっていれば問題ないのですが、一般的には、相手がデータを受け取る
準備ができているのかどうかよく分からない、、。

そんな時、コネクションを使うとよいようです。コネクションを張った状態で、ダミーのデータを送り、
そしてデータの読み取りをすると、

1. 相手が存在する場合は、何らかのデータを返してくるか、もしくは無反応。

2. 相手が存在しない場合は、ICMP Unreachableエラー

になります。このICMP Unrechableエラー(パケットキャプチャしてればこれがちゃんと送られてくる
はずなのだけど、送り側まで届くのかは不明。でもまあ、GCDAsyncUdpSocketライブラリでは、少なくと
も強制的にNetwork closedされる)を得られることが大切であって、これでデータを受け取る相手が存在
するかしないかを判定することが出来ます。



あ、、、もしかしたら、コネクションを張らないでも、他に方法があるのかも知れませんが、、。
僕はいろいろ頑張ってみたものの、コネクションを張ることでうまく出来たので、これでヨシとしました。

あまりネットワークに強くないので、このあたりのプログラミングは気を使います。

もっと良い方法をご存知の方がいれば、ご教示いただきたいです。

SublimeText3が、、、

突然、sublime text 3がアップデートの通知が来て、アップデートされた。アップデート後のバージョンは3.0 Build 3143

それはいいのだが、タブエリアとフッターエリアなどの色がおかしくなってしまった。何このグラデーション!

PreferenceからColor Schemeなどを変更しても全然治らない、、。
もう一度Sublime Textをクリーンインストールするしかないのだろうか、、、、と思い、まずはプラグインディレクトリ(Preference -> Browse Packagesで表示されるディレクトリ)の中身を一度消してみた。(後で戻すと、別の場所にmoveさせておいた)

すると、色がおかしいのはなおった!!!

で、どれが原因なのか、一つずつプラグインを戻してくと、なぜか全部戻しても色は正常なまま。最初、プラグインを全部一度に戻したときは色がおかしいのが再現したので、結局原因は分からず。

まあいいか。

不審なサインイン

メールをチェックしてたら、Microsoftアカウント「不審なサインイン」のお知らせが来ていた。管理画面でチェックすると、
IP => いつものIP
場所 => 大阪
時間 => 自分が使っていない時間
だったので、慌ててパスワード変更。

でも、なんかおかしいと思って再度確認してみると、、、
場所 => 現在の接続も大阪になってた。誤判定っぽい
時間 => 「昨日のxx時」と表示されてるが、テーブルの一番上を見るとGMTって書いてあった。日本時間に直したら、PC使ってた時刻だった。

それでも、Microsoftにログインした覚えないな、、と思って履歴チェックしてたら、英単語調べてる時、一度だけBingで検索してて、その時、自動ログインしていたっぽい。